数据持久化的3种方式:
merge()方法:
先得到对象的副本:再判断,
如果副本为瞬时状态,则用save()插入
如果副本为游离状态,则用update()更新
最终都是不改变传入对象的状态
saveOrUpdate()方法:
传入对象为游离状态,则用update()更新
传入对象为瞬时状态,则用save()更新
对象关联关系
单向多对一:
用多的一方去找一的一方(在多的一方实体类设值一的一方的类为属性)
双向一对多:
单向多对多:
双向多对多:
《set》
级联属性 cascade
放弃反转属性inverse
HQL查询
一:查询方法
list()方法,即使在缓存中有数据,也会到数据库中查询一边,效率低下
iterator()方法,首先遍历出id主键属性,再到缓存中查找全部。效率高.
参数赋值索引是从0开始的,JDBC 的?设值是从1开始的。