关于ThreadLocal<SqlSession>

来源:3-4 web项目初步使用mybatis完成查询操作

三又十二分之四

2019-04-07 20:32:20

老师在public class SqlSessionFactoryUtils{

private static ThreadLocal<SqlSession> threadLocal = new ThreadLocal<SqlSession>();

}

这个ThreadLocal<SqlSession> threadLocal 是个存放SqlSession的数组吗?有什么用?

因为我看在UserDao操作类中,获得SqlSession的方法为

private SqlSession getSqlSession() {
        sqlSession = SqlSessionFactoryUtils.getSqlSessionFactory().openSession();
        return sqlSession;
    }

感觉没用到ThreadLocal<SqlSession> threadLocal这个东西啊。


写回答

1回答

好帮手慕阿莹

2019-04-08

老师在代码中其实并没有实际用到LocalThread对象,只是简单介绍了一下。如果想用的话,需要重写openSession()方法,然后调用sqlSessionFactory的openSession()方法去获取一个SqlSession,然后将获取到的SqlSession使用localThread的set()方法存储起来。祝学习愉快!

0

0 学习 · 8016 问题

查看课程