博为峰JavaEE技术文章 —— Hibernate域模型(3)物理命名策略
2017-05-03 00:00
399 查看
今天小博老师继续带领大家学习域模型命名的物理命名策略。许多组织定义关于数据库对象(表,列,外键等)的命名。 物理命名策略是帮助实现这样的命名规则,而不必将显式名称硬编码到映射中。
隐式命名策略的目的是确定在没有明确指定的情况下把属性名与列明对应起来,比如:把名为accountNumber的属性映射到逻辑列名称accountNumber。物理命名策略的目的是使用更为简洁命名规则。比如,accountNumber使用物理命名规则时,物理列名称应该缩写为acct_num。
默认是将逻辑名作为物理名称。然而,应用程序可以定义自定义实现Physicalnamingstrategy。下面是PhysicalNamingStrategy 例子:
l 使用下划线而不是骆驼命名法
l 用标准缩写代替某些单词
![](http://s14.sinaimg.cn/mw690/006zipb5zy7aMSUpEzb1d&690)
有多种方法来指定要使用的PhysicalNamingStrategy。 首先,应用程序可以使用hibernate.physical_naming_strategy配置设置来指定实现:
l 引用实现org.hibernate.boot.model.naming.PhysicalNamingStrategy的类
l 实现org.hibernate.boot.model.naming.PhysicalNamingStrategy类
其次,应用程序和集成可以利用org.hibernate.boot.MetadataBuilder#applyPhysicalNamingStrategy。
隐式命名策略的目的是确定在没有明确指定的情况下把属性名与列明对应起来,比如:把名为accountNumber的属性映射到逻辑列名称accountNumber。物理命名策略的目的是使用更为简洁命名规则。比如,accountNumber使用物理命名规则时,物理列名称应该缩写为acct_num。
的确,acct_num的定义可以在隐式命名策略中处理。但问题应该分开来看,不管属性是否显式指定列名称或是否隐式确定都可以应用物理命名策略。如果未给出显式名称,则应该使用隐式命名策略。至于如何选择取决于需求和意图。 |
l 使用下划线而不是骆驼命名法
l 用标准缩写代替某些单词
有多种方法来指定要使用的PhysicalNamingStrategy。 首先,应用程序可以使用hibernate.physical_naming_strategy配置设置来指定实现:
l 引用实现org.hibernate.boot.model.naming.PhysicalNamingStrategy的类
l 实现org.hibernate.boot.model.naming.PhysicalNamingStrategy类
其次,应用程序和集成可以利用org.hibernate.boot.MetadataBuilder#applyPhysicalNamingStrategy。
相关文章推荐
- 博为峰JavaEE技术文章 —— Hibernate域模型(3)物理命名策略
- 博为峰JavaEE技术文章 —— Hibernate域模型
- 博为峰JavaEE技术文章 —— Hibernate域模型(2)
- 博为峰JavaEE技术文章 —— Hibernate域模型(2)
- 博为峰JavaEE技术文章 —— Hibernate 域模型(4) 基本类型
- 博为峰JavaEE技术文章 —— Hibernate 域模型(4) 基本类型
- 博为峰JavaEE技术文章 —— Hibernate 指南(2)Hbm文件
- 博为峰JavaEE技术文章 —— Hibernate 指南(2)Hbm文件
- 博为峰JavaEE技术文章 —— Hibernate 指南(4)Hbm文件
- 博为峰JavaEE技术文章 —— Hibernate 三种状态
- 博为峰JavaEE技术文章 ——MyBatis Hibernate 工作原理
- 博为峰JavaEE技术文章 ——MyBatis Hibernate 简介
- 博为峰JavaEE技术文章 —— Hibernate 指南(3)Hbm文件
- 博为峰JavaEE技术文章 —— Hibernate 指南(4)Hbm文件
- 博为峰Java技术文章 ——JavaEE Hibernate实例状态
- 博为峰JavaEE技术文章 —— Hibernate 指南(1)Hbm文件
- 博为峰JavaEE技术文章 ——MyBatis Hibernate 体系架构
- 博为峰JavaEE技术文章 —— Hibernate 三种状态
- 博为峰JavaEE技术文章 —— Hibernate 指南(3)Hbm文件
- 博为峰JavaEE技术文章 —— Hibernate 指南(1)Hbm文件