1 package dl.zhang.test.util;
2
3 import java.io.IOException;
4 import java.io.Reader;
5 import org.apache.ibatis.io.Resources;
6 import org.apache.ibatis.session.SqlSession;
7 import org.apache.ibatis.session.SqlSessionFactory;
8 import org.apache.ibatis.session.SqlSessionFactoryBuilder;
9
10 public class SessionUtil {
11
12 private static ThreadLocal<SqlSession> th_session = new ThreadLocal<SqlSession>();
13
14 private static SqlSessionFactory ssf = null;
15
16 static {
17 try {
18 //mybatis.cfg.xml是核心配置的名字要根据自己核心配置名字去填写
19 Reader reader = Resources.getResourceAsReader("mybatis.cfg.xml");
20
21 ssf = new SqlSessionFactoryBuilder().build(reader);
22
23 } catch (IOException e) {
24
25 e.printStackTrace();
26 }
27 }
28
29 public static SqlSession getCurrentSession() {
30 SqlSession session = th_session.get();
31 if (session == null) {
32 session = ssf.openSession();
33 th_session.set(session);
34 }
35 return session;
36 }
37
38 public static void closeSession() {
39 SqlSession session = th_session.get();
40 if (session != null) {
41 session.close();
42 th_session.set(null);
43 }
44
45 }
46 }