博为峰JavaEE技术文章 —— Hibernate域模型(3)物理命名策略

 今天小博老师继续带领大家学习域模型命名的物理命名策略。许多组织定义关于数据库对象(表,列,外键等)的命名。 物理命名策略是帮助实现这样的命名规则,而不必将显式名称硬编码到映射中。

隐式命名策略的目的是确定在没有明确指定的情况下把属性名与列明对应起来,比如:把名为accountNumber的属性映射到逻辑列名称accountNumber。物理命名策略的目的是使用更为简洁命名规则。比如,accountNumber使用物理命名规则时,物理列名称应该缩写为acct_num。

的确,acct_num的定义可以在隐式命名策略中处理。但问题应该分开来看,不管属性是否显式指定列名称或是否隐式确定都可以应用物理命名策略。如果未给出显式名称,则应该使用隐式命名策略。至于如何选择取决于需求和意图。

默认是将逻辑名作为物理名称。然而,应用程序可以定义自定义实现Physicalnamingstrategy。下面是PhysicalNamingStrategy 例子:

l 使用下划线而不是骆驼命名法

l 用标准缩写代替某些单词


有多种方法来指定要使用的PhysicalNamingStrategy。 首先,应用程序可以使用hibernate.physical_naming_strategy配置设置来指定实现:

引用实现org.hibernate.boot.model.naming.PhysicalNamingStrategy的类

实现org.hibernate.boot.model.naming.PhysicalNamingStrategy类

其次,应用程序和集成可以利用org.hibernate.boot.MetadataBuilder#applyPhysicalNamingStrategy。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值