zoukankan      html  css  js  c++  java
  • 《spring boot》8.2章学习时无法正常启动,报“ORA-00942: 表或视图不存在 ”

      在学习《spring boot》一书的过程中,由于原书作者难免有一些遗漏的的地方,或者系统、软件版本不一致、框架更新等各种因素,完全安装书中源码页不能实现项目的正常启动

      在8.2章节,演示JPA对oracle的支持时,配置文件中设置了如下代码,正常情况下应该支持数据库自动创建序列和表,但实际启动时却报错“ORA-00942: 表或视图不存在 ”

      

    spring.datasource.driverClassName=oracle.jdbc.OracleDriver
    spring.datasource.url=jdbc:oracle:thin:@localhost:1521:xe
    spring.datasource.username=XXXXX(此处请替换为你的数据库用户名)
    spring.datasource.password=XXXXX(此处请替换为你的数据库用户名对应的密码)
    #1
    spring.jpa.hibernate.ddl-auto=update
    #2
    spring.jpa.show-sql=true
    #3
    spring.jackson.serialization.indent-output=true

     

       需要插入数据的data.sql:

    insert into person(id,name,age,address) values(hibernate_sequence.nextval,xxx',32,'合肥');
    insert into person(id,name,age,address) values(hibernate_sequence.nextval,'xx',31,'北京');
    insert into person(id,name,age,address) values(hibernate_sequence.nextval,'yy',30,'上海');
    insert into person(id,name,age,address) values(hibernate_sequence.nextval,'zz',29,'南京');
    insert into person(id,name,age,address) values(hibernate_sequence.nextval,'aa',28,'武汉');
    insert into person(id,name,age,address) values(hibernate_sequence.nextval,'bb',27,'合肥');

      解决办法:

      在src/main/resources下面在新建一个schema.sql,内容如下:

    create sequence hibernate_sequence increment by 1 start with 1 maxvalue 999999999;
    CREATE TABLE person (id  NUMBER(5) PRIMARY KEY,name  VARCHAR2(15) NOT NULL,age NUMBER(5),address VARCHAR2(15)) TABLESPACE  your_table_space(此处替换为你登录的数据库账户对应的表空间,若还没有表空间,那你需要添加一行创建表空间的sql在这段代码的开头)

      表空间可以在这里查看:

     

       如果项目启动完成,访问页面出现“Whitelabel Error Page”, 请调整项目代码的文件结构:

    com  
     +- example  
         +- myproject  
             +- Application.java  
             |  
             +- domain  
             |   +- Customer.java  
             |   +- CustomerRepository.java  
             |  
             +- service  
             |   +- CustomerService.java  
             |  
             +- web  
                 +- CustomerController.java  

      本文的解决方案完全参考自如下链接:

      http://blog.csdn.net/lvyuan1234/article/details/65631176

  • 相关阅读:
    递归遍历多维数组(树数据结构)的超级简单方式,并且可以递归超过200层,摘自<<PHP精粹:编写高效PHP代码>>
    http协议传输二进制数据以及对输入流(php://input)和http请求的理解
    一个非常简单的RPC服务
    php://input 打开的数据流只能读取一次,即读取一次之后读取的值为空
    soap的简单实现(PHP)
    使用PHP的curl扩展实现跨域post请求,以及file_get_contents()百度短网址例子
    jquery选取iframe
    算法之棋盘覆盖
    词法分析之实验报告
    简单的词法分析小程序
  • 原文地址:https://www.cnblogs.com/LiQ0116/p/6986704.html
Copyright © 2011-2022 走看看