当前位置: 首页 > news >正文

顶尖的郑州网站建设网络课程

顶尖的郑州网站建设,网络课程,佛山做外贸网站,北京市建设城乡建设委员会网站版本 spring-boot:3.2.2 hibernate:6.4.1.Final 配置项目 DDL模式 生成定义语句修改表结构 配置路径:spring.jpa.hibernate.ddl-auto配置值:org.hibernate.tool.schema.Action枚举类型值 可选值: 可选值说明none默认值。不操作create-…

版本

spring-boot:3.2.2
hibernate:6.4.1.Final

配置项目

DDL模式

生成定义语句修改表结构

  • 配置路径:spring.jpa.hibernate.ddl-auto
  • 配置值:org.hibernate.tool.schema.Action枚举类型值

可选值:

可选值说明
none默认值。不操作
create-only当使用嵌入式数据库且没有模式管理器时,此项为默认值。创建,如果已存在将报错
drop删除
create删除后再创建
create-drop先删除,SessionFactory启动时创建,SessionFactory关闭时再删除
validate仅校验
update必要时更新
truncate清空数据

隐式命名策略

如果没有通过@Table或者@Column等注解显式指定表名、列名,将通过隐式命名策略生成对应名称

  • 配置路径: spring.jpa.hibernate.naming.implicit-strategy
  • 配置值:指定实现 org.hibernate.boot.model.naming.ImplicitNamingStrategy 接口的类全名
  • 默认值: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy

可选官方实现:

类名说明
org.hibernate.boot.model.naming.ImplicitNamingStrategyJpaCompliantImpl匹配JPA2.0标准的实现,使用JPA注解指派的名称或者根据类名属性名。其他实现都继承于此类。
org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy默认值。重写了关联连接表名规则
org.hibernate.boot.model.naming.ImplicitNamingStrategyComponentPathImpl重写了 AttributePath 转换规则,解析为完整路径
org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyHbmImpl命名不依赖任何JPA注解
org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl匹配JPA1.0标准的实现

物理命名策略

将显式指定或隐式命名策略转换得到的逻辑名称转换为数据库实际使用的物理名称

  • 配置路径:spring.jpa.hibernate.naming.physical-strategy
  • 配置值:指定实现 org.hibernate.boot.model.naming.PhysicalNamingStrategy 接口的类全名
  • 默认值:org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy

可选官方实现:

类名说明
org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy将驼峰规则的命名转换为下划线规则
org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl保持与逻辑名称一致,不做任何转换

源码

spring-boot-autoconfigure
org/springframework/boot/autoconfigure/orm/jpa/HibernateProperties.java

@ConfigurationProperties("spring.jpa.hibernate")
public class HibernateProperties {// 命名策略配置private final Naming naming = new Naming();// DDL模式配置private String ddlAuto;...// 读取DDL模式配置,按优先级读取配置或默认值private String determineDdlAuto(Map<String, String> existing, Supplier<String> defaultDdlAuto) {// 1. 获取hibernate.hbm2ddl.auto配置值String ddlAuto = existing.get(AvailableSettings.HBM2DDL_AUTO);if (ddlAuto != null) {return ddlAuto;}// 2. 获取spring.jpa.hibernate.ddl-auto配置值if (this.ddlAuto != null) {return this.ddlAuto;}// 3. 获取jakarta.persistence.schema-generation.database.action配置值if (existing.get(AvailableSettings.JAKARTA_HBM2DDL_DATABASE_ACTION) != null) {return null;}// 4. 默认为nullreturn defaultDdlAuto.get();}// 命名策略配置类public static class Naming {// 应用命名策略(没有配置属性则填充默认值)private void applyNamingStrategies(Map<String, Object> properties) {applyNamingStrategy(properties, AvailableSettings.IMPLICIT_NAMING_STRATEGY, this.implicitStrategy,() -> SpringImplicitNamingStrategy.class.getName());applyNamingStrategy(properties, AvailableSettings.PHYSICAL_NAMING_STRATEGY, this.physicalStrategy,() -> CamelCaseToUnderscoresNamingStrategy.class.getName());}...}...
}
http://www.hkea.cn/news/436204/

相关文章:

  • 做网站需要买主机那新媒体营销方式有几种
  • 网络推广seo公司seo排名的方法
  • 南山做网站多少钱百度资讯
  • 西安哪里有做网站的小学生收集的新闻10条
  • 做游戏网站有几个要素seo网站关键词优化报价
  • 蓬业东莞网站建设技术支持东莞做网站公司首选
  • 网站版式设计获客渠道有哪些
  • 今日军事新闻简短扬州seo优化
  • 国外好看的教育类网站模板下载东莞做网站最好的是哪家
  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司
  • 黑龙江省城乡和住房建设厅网站首页百度链接地址
  • 网站模板修改工具专业seo关键词优化
  • 口碑好的句容网站建设yahoo搜索
  • 深圳网站建设外贸公司价格网络营销的背景和意义
  • 长春网站建设硕成传媒seo快速排名优化公司
  • web网站开发能使用c 吗免费建立个人网站申请
  • 织梦网站修改教程视频网站优化培训学校
  • 南沙区交通和建设局网站中国十大网络销售公司
  • 免费建设网站的方法百度网址大全 官网
  • 手机网站设计制作公司微信推广费用一般多少
  • 建设网站需要什么注册域名费用一般多少钱
  • 女性门户网站源码百度指数功能有哪些
  • 怎么帮公司做网站建设谷歌搜索引擎免费入口 香港