精通Hibernate学习一

第一章 对象-关系映射的基础
观点1:符合JavaBean风格,使用了可以指定访问级别的set和get方法。
观点2:set和get方法的使用者:java应用层的程序;Hibernate。
前者的访问受限于方法的访问级别,后者无视(思考 why)
tips:这两个角色用set和get方法操作持久化类来干什么?
观点3:映射的类型,提供基本的映射类型,并允许扩展。
观点4:访问方式,默认的是property属性访问,即get和set;永续使用反射机制直接访问。
配置:<property name=“” access=“property/field”>
观点5:对于get和set方法,可以人为的加入程序逻辑,来应用于特殊场景。
观点6:设置派生属性。对于一些特殊的,需要在数据库中查询多个记录,并执行指定函数操作来获得结果的属性,可以特殊配置。如平均值,总值,最高值等等
配置:<property name=“” formula=“sql语句”>
观点7:Hibernate初始化时,会根据映射配置信息,预先定义并实现通用的sql映射语句:
insert,update,delete,根据OID加载load。它们会存在SessionFactory的缓存中。
思考(这个我认为可以是Hibernate优化的重点,根据实际应用定制,而不是采用默认配置信息)
常用配置可分为两个应用级别:class和property
class: mutable(易变的)等价于全property的update;
dynamic-insert
dynamic-update
property:update
insert
dynamic-insert
dynamic-update
均为布尔值
观点8:处理SQL引用标识符。对于特殊的表舒服,如空格符的识别,‘ACCOUNT STA’
配置:sql:create table ACCOUNT(
...............
)
hibernate:<property name="account_sta" colunm="'ACCOUNT STA'">
观点9:创建命名策略,简单的说,就是在持久层的属性名与数据库的命名之间做一个适配,用到了适配器模式。
应用场景:数据库所有字段希望均为大写,并有指定的前缀和后缀。
操作步骤:1,实现Hibernate的通用接口,NamingStrategy即可
注意事项:对于命名策略,是config级别的,也就是说是全局的,需要初始化时显示的声明。
观点10:设置命名Schema,设置类的包名,个人认为属于小操作,小技巧,利于结构清晰,没太大的实用性。
<hibernate-mapping default-schema="BK"> or
<class default-schema="BK">
所有的映射,都会在配置信息前加BK_的前缀
同样的,包名的关键字是package。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值