我正在用Oracle db作为数据存储构建springboot应用程序。我的应用程序在H2InMemory数据库中工作得很好,但一旦我将它定位到Oracle DB,它就不能像预期的那样工作了。表不是在Oracle DB中创建的,但我可以看到,在应用程序启动期间,sql查询会正确地打印在控制台上。
我尝试了属性spring.jpa.hibernate.ddl-auto的所有可能性,所有这些都不创建任何表。
<!-- dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency-->
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.4</version>
</dependency>
spring.jpa.show-sql=true
spring.h2.console.enabled=true
#Using SID
spring.datasource.url= jdbc:oracle:thin:@somehost:1521:test
spring.datasource.username=test
spring.datasource.password=test
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
#hibernate configs
spring.jpa.database-platform=org.hibernate.dialect.Oracle10gDialect
spring.jpa.hibernate.ddl-auto=create
[INFO ] 2019-01-03 15:54:19.733 [main] RepositoryConfigurationDelegate - Bootstrapping Spring Data repositories in DEFAULT mode.
[INFO ] 2019-01-03 15:54:19.782 [main] RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 41ms. Found 1 repository interfaces.
[INFO ] 2019-01-03 15:54:20.019 [main] PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$bc3dc584] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
[INFO ] 2019-01-03 15:54:20.261 [main] TomcatWebServer - Tomcat initialized with port(s): 8080 (http)
[INFO ] 2019-01-03 15:54:20.364 [main] ContextLoader - Root WebApplicationContext: initialization completed in 1008 ms
[INFO ] 2019-01-03 15:54:20.387 [main] ServletRegistrationBean - Servlet dispatcherServlet mapped to [/]
[INFO ] 2019-01-03 15:54:20.390 [main] FilterRegistrationBean - Mapping filter: 'characterEncodingFilter' to: [/*]
[INFO ] 2019-01-03 15:54:20.390 [main] FilterRegistrationBean - Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
[INFO ] 2019-01-03 15:54:20.390 [main] FilterRegistrationBean - Mapping filter: 'formContentFilter' to: [/*]
[INFO ] 2019-01-03 15:54:20.390 [main] FilterRegistrationBean - Mapping filter: 'requestContextFilter' to: [/*]
Hibernate: drop table request cascade constraints
Hibernate: drop sequence hibernate_sequence
Hibernate: create sequence hibernate_sequence start with 1 increment by 1
Hibernate: create table request (id number(19,0) not null, creation timestamp, modification timestamp, request_data varchar2(32767), request_type varchar2(255 char), service_name varchar2(255), system_name varchar2(255), primary key (id))
[INFO ] 2019-01-03 15:54:28.276 [main] LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default'
[INFO ] 2019-01-03 15:54:28.642 [main] ThreadPoolTaskExecutor - Initializing ExecutorService 'applicationTaskExecutor'
[WARN ] 2019-01-03 15:54:28.670 [main] JpaBaseConfiguration$JpaWebConfiguration$JpaWebMvcConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
[INFO ] 2019-01-03 15:54:28.820 [main] TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path ''
应用程序启动打印sql查询,但实际上没有一个是在数据库上执行的。
您应该传递spring.jpa.properties.hibernate.dialct=org.hibernate.dialt.oracle10gdialce
您的spring.jpa.database-platform=org.hibernate.dialt.oracle10gdialic
然而,我不太确定Oracle DBs,它在MySQL上对我有效。这不应该依赖于底层DB、IMO。
有关Spring属性的更多选项,请查看此链接。
问题内容: 这个问题不太可能对将来的访客有所帮助;它仅与较小的地理区域,特定的时间段或极为狭窄的情况(通常不适用于Internet的全球受众)有关。要获得使该问题更广泛适用的帮助,请访问帮助中心。 7年前关闭。 我有带有Hibernate和Spring框架的Maven项目。我希望Hibernate自动创建表,但是只是删除所有现有表,并且不创建所需的表。在会话工厂初始化期间不会引发任何异常,但是当我
试图用hibernate创建表,但它已经创建并删除了。 hibernate.cfg.xml:
我在intellij上启动spring boot应用程序时遇到问题,它失败了,并显示以下消息:与目标VM断开连接,地址:'127.0.0.1:49784',传输:'socket' 过程结束,退出代码为255。以前有人遇到过这种情况吗?
问题内容: 我有一个基本的Hibernate代码,我将属性“ hibernate.hbm2ddl.auto”设置为更新,因为它仍然无法在数据库中自动创建表。 这些是必需的文件: employee.hbm.xml liability.hbm.xml hibernate.cfg.xml 这是我尝试运行的Main.java: 这是我得到的错误: com.mysql.jdbc.exceptions.jdb
我有一个使用jpa hibernate的项目。我有一种坚持。xml文件,并希望它自动在数据库中创建表。我已正确指定了所有属性。日志中显示了所有sql语句,但数据库中仍然没有表。有没有人能解决这个问题?我已经搜索了几乎所有与我的问题相关的链接,但都没有找到答案。 这是我的persistence.xml 这就是我在控制台上得到的 16: 35:48881信息[org.hibernate.annotat
我有WL 6.1工作室(在顶部RAD 9.0.1)是自由档案8.5.5.1WL 6.1德比数据库。 在某个时间点,我开始收到错误并且我的WL应用程序未能启动,从WA日志看,JPA似乎存在问题(或JPA类加载冲突)? 我可以检查什么来修复它? 下面是日志文件的相关片段(应用程序无法启动)