打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
hibernate的session接口及get-load-persist方法
1.session:是hibernate操作数据库的一个核心的接口。session中包装了一个connection
 session接口中有一个get(class user.class,int id)方法【经常要使用】,可以通过主键Id得到一条记录(对象)
 Class userClass = User.class;
 User user = (User)sessioin.get(userClass,id);
 对上面两行代码,也可以这么理解,由于session可以管理多个数据库表所对应的多个实体对象,如果要查询id为1的实体对象,
 Session.get()方法需要知道从哪个数据库表中查询id为1的记录,所以,除了给get方法传递所要查询的实体对象的id值外,
 还必须给get方法传递实体对象的类型,get方法才能知道去哪个数据库表中进行查询。

2.session接口中还有一个load(class ,id),与get方法的参数是一样的。区别是它不会立刻去访问数据库,在底层不会产生sql语句,
  在第一次需要用到数据库的时候,底层才会输出sql语句。这就是懒加载。
 
3.session接口中的persist()方法,与save()方法是一样的。只是在不开启事务时有区别:
  save():当不开启事务时,该方法在会把记录插入在数据库中,然后又会进行回滚。最后,在数据库中还是没有记录
  persist():当不开启事务时,该方法根本不会把记录插入到数据库中。该方法用得较少
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
hibernate知识点理解(转)
关于Hibernate中load与get的讨论
Hibernate中get和load方法的区别
理解Hibernate中PO的代理类
谈谈Hibernate缓存使用(一)
Hibernate中get()与load()的区别
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服