Hibernate需要花费大量时间来加载应用程序运行

时间:2019-07-19 11:51:44

标签: java spring oracle hibernate

当我使用ddl-auto'update'或'validate'运行应用程序时,Hibernate卡住了

我有一个本地Oracle数据库,其用户(TEST)在端口1521上运行。

在Spring应用程序上,我的应用程序yml配置文件中有此文件:

spring:
  jpa:
    show-sql: true
  devtools:
    add-properties: true
  datasource:
    jdbcUrl: 'jdbc:oracle:thin:@localhost:1521:test'
    username: 'TEST'
    password: 'Testing123'
    driverClassName: 'oracle.jdbc.OracleDriver'
    hibernate:
      ddl-auto: "update"
      dialect: 'org.hibernate.dialect.Oracle10gDialect'

当我运行应用程序时,它卡在了以下几行:

2019-07-19 13:30:39.043  INFO 74584 [  restartedMain] o.h.Version                              : HHH000412: Hibernate Core {5.3.10.Final}
2019-07-19 13:30:39.045  INFO 74584 [  restartedMain] o.h.c.Environment                        : HHH000206: hibernate.properties not found
2019-07-19 13:30:39.235  INFO 74584 [  restartedMain] o.h.a.c.r.j.JavaReflectionManager        : HCANN000001: Hibernate Commons Annotations {5.0.4.Final}
2019-07-19 13:30:39.475  INFO 74584 [  restartedMain] c.z.h.HikariDataSource                   : Test-H2DBPool - Starting...
2019-07-19 13:30:40.750  INFO 74584 [  restartedMain] c.z.h.HikariDataSource                   : Test-H2DBPool - Start completed.
2019-07-19 13:30:40.769  INFO 74584 [  restartedMain] o.h.d.Dialect                            : HHH000400: Using dialect: org.hibernate.dialect.Oracle10gDialect

如果我将休眠的ddl-auto更改为“ create-drop”,则它可以完美工作并且不会卡住。

我尝试调试该应用程序,并尝试获取一些日志,但是没有任何显示,我不知道该怎么办。通过“ create-drop”,我可以毫无问题地获取SQL日志。

编辑:

在等待应用程序运行40分钟之后,它已经执行并且运行良好。

如果在运行应用程序时将用户SYS用作SYSDBA,则Hibernate会在40秒或更短时间内加载。为什么要与另一个用户一起加载这么多时间?

0 个答案:

没有答案