zoukankan      html  css  js  c++  java
  • mybatis关于OpenSessionInview这个filter还有创建一个mybatis工具类

    public class MybatisUtil {
        //factory实例化过程是一个非常耗费性能的过程
        //保证有且只有一个factory;
        private static SqlSessionFactory factory;
        private static ThreadLocal<SqlSession> tl = new ThreadLocal<>();
        static {
            try {
                InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
                factory = new SqlSessionFactoryBuilder().build(is);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        
        //获取sqlsession方法
        public static SqlSession getSession() {
            SqlSession session = tl.get();
            if(session==null) {
                session = factory.openSession();
            }
            return session;
        }
        
        //关闭session
        public static void closeSession() {
            SqlSession session = tl.get();
            if(session!=null) {
                session.close();
            }
            tl.set(null);
        }
    }

    其中学习一个jdk的类 ThreadLocal 在当前线程中可以保存一个对象,大概用法:

    ThreadLocal<Object> threadLocal = new ThreadLocal<>();
    threadLocal.set();
    threadLocal.get();
  • 相关阅读:
    数据结构与算法--绪论
    Django之模板(T)
    博客园之MD文件代码块添加隐藏/显示按钮
    博客园之背景特效
    博客园之生成侧边目录
    占位先1
    Django之视图(V)
    Django之ORM
    Django框架
    tomcat在centos下启动缓慢,耗时较长
  • 原文地址:https://www.cnblogs.com/chyxOne/p/9914095.html
Copyright © 2011-2022 走看看