关于SqlSessionFactory的管理中ThreadLocal类
来源:3-4 web项目初步使用mybatis完成查询操作
哆丶哆
2019-07-20 17:18:37
老师,在学习mybtis中,提到对SqlSessionFactory进行管理,里面用到了ThreadLocal类,请问这个类是什么类?有Thread的,应该是跟线程有关的吧?没见过它,对于它的用法应该怎么理解好呢?
1回答
1、你好!老师在代码中其实并没有实际用到LocalThread对象,只是简单介绍了一下。
2、这个类是线程池
3、是的,和线程有关
4、ThreadLocal是线程本地变量工具类,可以防止各个线程之间的变量互不干扰,适用于高并发编程,一般用来解决数据库连接、Session管理等。因为本项目并未涉及到高并发,老师在这里实际没有用到
如果想用的话,需要重写openSession()方法,然后调用sqlSessionFactory的openSession()方法去获取一个SqlSession,然后将获取到的SqlSession使用localThread的set()方法存储起来。
祝学习愉快!
相似问题
回答 3
回答 3