MyBatis的SqlSessionFactory创建配置文件

SqlSessionFactory创建配置文件

1、SqlSessionFactory简介 SqlSessionFactory是MyBatis中的一个重要的对象,它是用来创建SqlSession对象的,而SqlSession用来操作数据库的。

2、SqlSessionFactory生成 SqlSessionFactory对象可以通过SqlSessionFactoryBuilder来获得,而SqlSessionFactoryBuildr则可以从XML配置文件或预先定制的Configuration实例构建出SqlSessionFactory的实例。

SqlSessionFactory是线程安全的,它一旦被创建,应该在应用执行期间都存在。在应用运行期间不要重复创建多次,建议使用单例模式。

3、SqlSessionFactory的常用方法 SqlSessionFactory主要用于创建SqlSession,一般是从Connection或者DataSource中创建。

public interface SqlSessionFactory {

SqlSession openSession();

SqlSession openSession(boolean autoCommit); SqlSession openSession(Connection connection); SqlSession openSession(TransactionIsolationLevel level);

SqlSession openSession(ExecutorType execType); SqlSession openSession(ExecutorType execType, boolean autoCommit); SqlSession openSession(ExecutorType execType, TransactionIsolationLevel level); SqlSession openSession(ExecutorType execType, Connection connection);

Configuration getConfiguration();

}

配置文件

// 1 读取配置文件 String resource = “mybatis-config.xml”; InputStream inputStream=Resources.getResourceAsStream(resource); // 2 通过配置文件,创建session工厂 sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); try { SqlSession session=sqlSessionFactory.openSession(); //例如:添加方法 session.insert(“映射xml名.add”, 参数); session.commit(); } catch (Exception e) { e.printStackTrace(); } finally { if (session != null) { session.close(); } }

经验分享 程序员 微信小程序 职场和发展