JHipster生成应用中Hibernate配置与映射文件位置咨询
嘿,我来帮你理清JHipster项目里Hibernate配置和映射文件的位置与配置方式~
在JHipster中查找Hibernate配置文件和映射文件
一、Hibernate核心配置文件
JHipster基于Spring Boot构建,所以它不会用传统的hibernate.cfg.xml作为默认配置文件,而是把Hibernate的配置整合到Spring Boot的环境配置文件中:
- 默认配置入口:
src/main/resources/application.yml(如果生成项目时选了properties格式就是application.properties),开发环境的专属配置在application-dev.yml,生产环境则是application-prod.yml - 核心配置项:所有以
spring.jpa.*开头的配置都是Hibernate相关的,比如spring.jpa.hibernate.ddl-auto(控制表结构生成策略)、spring.jpa.show-sql(是否打印SQL)、spring.jpa.properties.hibernate.dialect(数据库方言)等,这些完全等价于传统hibernate.cfg.xml里的配置项 - 如果你偏好传统的
hibernate.cfg.xml:可以手动在src/main/resources下创建该文件,然后在application.yml中添加配置指定加载路径:spring: jpa: hibernate: cfg-location: classpath:hibernate.cfg.xml
二、实体映射文件
JHipster默认采用注解式映射,这也是Spring Boot和JPA的推荐方式,但如果需要XML映射也完全支持:
- 注解式映射(默认方式):所有实体类都放在
src/main/java/[你的项目包路径]/domain/目录下,直接通过JPA注解定义映射关系,比如@Entity、@Table、@Column、@OneToMany等,你可以直接查看这些实体类代码了解映射逻辑 - XML映射文件(按需使用):
- 可以创建全局ORM配置文件
src/main/resources/META-INF/orm.xml,或者为单个实体创建[实体类名].hbm.xml文件放在resources目录下 - 在
application.yml中配置加载路径,比如:spring: jpa: mapping-resources: classpath:META-INF/orm.xml, classpath:User.hbm.xml
- 可以创建全局ORM配置文件
三、实用小提示
- JHipster会自动配置Hibernate的
SessionFactory,不需要你手动实例化 - 想要调试Hibernate的SQL输出,可以在
application-dev.yml中开启:spring: jpa: properties: hibernate: show_sql: true format_sql: true - 对于复杂映射场景(比如继承关系、复合主键),JHipster生成的实体类已经自带了对应的注解配置,直接参考
domain目录下的代码即可
内容的提问来源于stack exchange,提问作者user3568043
相关产品推荐
相关产品推荐

