java web 从入门到精通 383页 16.3 Hibernate数据持久化
发表在JavaWeb图书答疑 2016-05-26
是否精华
版块置顶:
private static final ThreadLocal<session> threadLocal=new ThreadLocal<Session>;
private static SessionFactory sessionFactory=null;
........
Session session =(Session)threadLocal.get();//此处“=”后面为什么还要有一个强类型转换(session),不加可以吗?第一句已经定义了泛型中元素的类型,为甚此处还要加一个强类型转换?
........
session=(sessionFactory!=null)?sessionFactory.openSession();null;//上一句既然已经获得了当前线程的线程局部变量的副本,为什么在这里还要通过SessionFactory对象创建session?
分享到:
精彩评论 1
菜鸟级精英
学分:0 LV1
TA的每日心情
开心
2020-03-23 21:05:48
2016-05-30
沙发
1.ThreadLocal<session>声明时指定了泛型,在get()获取是可以不加强制转换。加上泛型可以控制添加元素的类型。
2.首先先从本地线程获取session,这个session可能是null值,如果session是null,并且sessionFactory不是null,则使用sessionFactory.openSession()获取一个session;如果session不是null,直接返回这个session。这是一种单例开发模式,可以保证程序中使用到session对象都是同一个。
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照