Roo 2.0如何在没有persistence.xml的情况下将Hibernate从创建更改为更新
我已经准备好将我的应用程序部署到生产环境中,并找到了persistence.xml,它将从创建更改为更新,因此数据将被持久化……等等,没有persistence.xmlRoo 2.0如何在没有persistence.xml的情况下将Hibernate从创建更改为更新,hibernate,spring-roo,Hibernate,Spring Roo,我已经准备好将我的应用程序部署到生产环境中,并找到了persistence.xml,它将从创建更改为更新,因此数据将被持久化……等等,没有persistence.xml 如何进行更改?SpringRoo2.0生成SpringBoot应用程序,因此需要使用application.properties文件配置持久性属性。在Spring引导应用程序中,不需要persistence.xml文件 默认情况下,springrooshell生成的属性将持久性配置为持久化数据,而不是在每次部署应用程序时创建数据
如何进行更改?SpringRoo2.0生成SpringBoot应用程序,因此需要使用
application.properties
文件配置持久性属性。在Spring引导应用程序中,不需要persistence.xml
文件
默认情况下,springrooshell生成的属性将持久性配置为持久化数据,而不是在每次部署应用程序时创建数据
这是一个使用Spring Roo命令配置持久性的示例:
jpa设置--提供程序HIBERNATE--数据库POSTGRES--数据库名myDB--用户名admin--密码admin--主机名localhost
src/main/resources/application.properties
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.password=admin
spring.datasource.url=jdbc\:postgresql\://localhost\:5432/myDB
spring.datasource.username=admin
spring.jpa.hibernate.naming.strategy=org.hibernate.cfg.ImprovedNamingStrategy
如果您在项目中使用类似于上面提供的命令配置了持久性,那么在应用程序.properties
文件中应该有一个非常类似的持久性配置。但是,您说您的数据没有持久化,因此您可能会遇到以下问题:
jpa
命令脚本clinic.roo
,然后更新代码以生成您自己的应用程序。示例clinic.roo
文件配置了一个HYPERSONIC\u IN_MEMORY
数据库,因此您将遇到与第1点描述的问题相同的问题解决方案:再次执行jpa
命令,用非易失性数据库配置持久性应用程序.properties
文件中使用create
或create drop
值手动配置属性spring.jpa.hibernate.ddl auto
解决方案:将此属性的值更改为验证
或更新
值应用程序中配置的所有可用属性也很好。属性文件:
希望有帮助,SpringRoo2.0生成SpringBoot应用程序,因此需要使用application.properties
文件配置持久性属性。在Spring引导应用程序中,不需要persistence.xml
文件
默认情况下,springrooshell生成的属性将持久性配置为持久化数据,而不是在每次部署应用程序时创建数据
这是一个使用Spring Roo命令配置持久性的示例:
jpa设置--提供程序HIBERNATE--数据库POSTGRES--数据库名myDB--用户名admin--密码admin--主机名localhost
src/main/resources/application.properties
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.password=admin
spring.datasource.url=jdbc\:postgresql\://localhost\:5432/myDB
spring.datasource.username=admin
spring.jpa.hibernate.naming.strategy=org.hibernate.cfg.ImprovedNamingStrategy
如果您在项目中使用类似于上面提供的命令配置了持久性,那么在应用程序.properties
文件中应该有一个非常类似的持久性配置。但是,您说您的数据没有持久化,因此您可能会遇到以下问题:
您将项目配置为使用诸如HYPERSONIC_in_memory之类的内存中数据库,以便在重新启动应用程序时删除数据解决方案:更改为非易失性数据库,如Postgresql、Mysql、Oracle等。使用正确的配置再次执行jpa
命令
您已经执行了示例脚本clinic.roo
,然后更新代码以生成您自己的应用程序。示例clinic.roo
文件配置了一个HYPERSONIC\u IN_MEMORY
数据库,因此您将遇到与第1点描述的问题相同的问题解决方案:再次执行jpa
命令,用非易失性数据库配置持久性
您已在应用程序.properties
文件中使用create
或create drop
值手动配置属性spring.jpa.hibernate.ddl auto
解决方案:将此属性的值更改为验证
或更新
值
无论如何,我建议您,如果要使用Spring Boot应用程序,请使用Spring Boot官方文档阅读更多关于它们的信息:
此外,检查可以在应用程序中配置的所有可用属性也很好。属性文件:
希望能有所帮助,好的,所以我询问了时间,并得到了学习如何制作手表的规范
答案很简单
spring.jpa.hibernate.ddl auto=Update
将其添加到application.properties
JCG确实提供了一个提示……虽然他说我更改了设置,但没有更改,默认设置是“创建”而不是“更新”
最有用的是他的链接
谢谢。好的,所以我询问了时间,并得到了学习如何制作手表的说明书
答案很简单
spring.jpa.hibernate.ddl auto=Update
将其添加到application.properties
JCG确实提供了一个提示……虽然他说我更改了设置,但没有更改,默认设置是“创建”而不是“更新”
最有用的