2016-09-24 135 views
0

每當我重新啓動tomcat服務器時,數據庫表中的所有數據都將被刪除。但我想保留數據庫表中的數據。在閱讀了幾篇文章之後,我所瞭解的是ddl-auto應該被設置爲更新。休眠ddl-auto =更新不起作用

在我的春天啓動的應用程序,我有以下設置

security.basic.enabled=false 
server.port=9090 
spring.datasource.url=jdbc:h2:mem:AZ;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE 
spring.datasource.driverClassName=org.h2.Driver 
spring.datasource.username=myuser 
spring.datasource.password=mypassword 
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect 
spring.jpa.generate-ddl=true 
spring.jpa.hibernate.ddl-auto=update 
hibernate.show_sql = true 
hibernate.format_sql = true 
spring.jpa.properties.hibernate.current_session_context_class=org.springframework.orm.hibernate4.SpringSessionContext 

不幸的是,這是因爲它們無法正常工作。表中的所有數據都被刪除。

這是登錄

2016-09-24 09:35:47.831 INFO 6343 --- [ost-startStop-1] j.LocalContainerEntityManagerFactoryBean : Building JPA container EntityManagerFactory for persistence unit 'default' 
2016-09-24 09:35:47.852 INFO 6343 --- [ost-startStop-1] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [ 
    name: default 
    ...] 
2016-09-24 09:35:47.975 INFO 6343 --- [ost-startStop-1] org.hibernate.Version     : HHH000412: Hibernate Core {4.3.11.Final} 
2016-09-24 09:35:47.979 INFO 6343 --- [ost-startStop-1] org.hibernate.cfg.Environment   : HHH000206: hibernate.properties not found 
2016-09-24 09:35:47.982 INFO 6343 --- [ost-startStop-1] org.hibernate.cfg.Environment   : HHH000021: Bytecode provider name : javassist 
2016-09-24 09:35:48.320 INFO 6343 --- [ost-startStop-1] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {4.0.5.Final} 
2016-09-24 09:35:48.954 INFO 6343 --- [ost-startStop-1] org.hibernate.dialect.Dialect   : HHH000400: Using dialect: org.hibernate.dialect.H2Dialect 
2016-09-24 09:35:49.211 INFO 6343 --- [ost-startStop-1] o.h.h.i.ast.ASTQueryTranslatorFactory : HHH000397: Using ASTQueryTranslatorFactory 
2016-09-24 09:35:49.861 INFO 6343 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaUpdate : HHH000228: Running hbm2ddl schema update 
2016-09-24 09:35:49.861 INFO 6343 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaUpdate : HHH000102: Fetching database metadata 
2016-09-24 09:35:49.866 INFO 6343 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaUpdate : HHH000396: Updating schema 
2016-09-24 09:35:49.882 INFO 6343 --- [ost-startStop-1] java.sql.DatabaseMetaData    : HHH000262: Table not found: user 
2016-09-24 09:35:49.885 INFO 6343 --- [ost-startStop-1] java.sql.DatabaseMetaData    : HHH000262: Table not found: user 
2016-09-24 09:35:49.887 INFO 6343 --- [ost-startStop-1] java.sql.DatabaseMetaData    : HHH000262: Table not found: user 
2016-09-24 09:35:49.907 INFO 6343 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaUpdate : HHH000232: Schema update complete 

我真正需要的是保持在數據庫表中的數據,即使重新啓動我的服務器後。

回答

2

應該由specifing只是那些2個屬性的作用:

測試彈簧引導1.4.1
spring.jpa.hibernate.ddl-auto=update 
spring.datasource.url=jdbc:h2:file:./testdb