您的位置:首页 > 其它

整理hibernate 的set属性

2016-03-28 22:16 239 查看
name:映射类属性的名称;

access:hibernate访问这个属性的策略

table:关联的目标数据库表

schema:目标数据库表的schema名字

catalog:目标数据库表的catalog名字

lazy:是否采用延迟加载

subselect:定义一个子查询

inverse:用于标识双相关联中被动的一方,一般标识一对多中一的一方设置为ture

sort;设置排序的类型,这个属性可以选择的值有:unsorted,不排序;natural.自然排序,也就是利用 java对象来进行排序;comparatorClass,指定某个实现了java.util.Comparator接口的类作为排序算法,注意,这里的排序要避免有order-by同时使用

mutable:标识被关联的对象是否可以改变

cascode;设置操作中的级联策略,这个属性可以选择的值有:all,在所有的操作的情况下均进行级联,none,在所有操作的情况下均不进行级联操作,save-update,在执行更新操作时级联,delete,在执行删除操作时级联,all-delete-orphan,当被关联对象失去关联宿主时,将被删除

order-by:设置排序规则

where;增加筛选条件,这里设置的条件将被加载到所有的sql查询语句中

batch-size:采用延迟加载时,一次读取数据的数量

fetch:设置抓取数据的策略,这个属性的可选值有join外连接抓取,select序列选择抓取

inverse 属性

在hibernate中通过对 inverse 属性的来决定是由双向关联的哪一方来维护表和表之间的关系. inverse = false 的为主动方,inverse = true 的为被动方, 由主动方负责维护关联关系在没有设置 inverse=true 的情况下,父子两边都维护父子关系 在 1-n 关系中,将 n 方设为主控方将有助于性能改善(如果要国家元首记住全国人民的名字,不是太可能,但要让全国人民知道国家元首,就容易的多)在
1-N 关系中,若将 1 方设为主控方
–会额外多出 update语句。 –插入数据时无法同时插入外键列,因而无法为外键列添加非空约束 
cascade 属性(级联)
在对象 – 关系映射文件中, 用于映射持久化类之间关联关系的元素, , 和 都有一个 cascade 属性, 它用于指定如何操纵与当前对象关联的其他对象. 注意:开发时不建议设定该属性. 建议使用手工的方式来处理 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hibernate