一、封装工具类
将factory和session创建过程封装,
session不能设为成员变量,保证高并发的线程安全问题
package mybatis;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MybatisUtil {
public static SqlSessionFactory sessionFactory;
static {
try {
// 使用MyBatis提供的Resources类加载mybatis的配置文件
Reader reader = Resources.getResourceAsReader("mybatis.cfg.xml");
// 构建sqlSession的工厂
sessionFactory = new SqlSessionFactoryBuilder().build(reader);
} catch (Exception e) {
e.printStackTrace();
}
}
// 创建能执行映射文件中sql的sqlSession
public static SqlSession getSession() {
return sessionFactory.openSession();
}
}
二、数据库配置单独放在properties中
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://loca