Mybatis原始执行方式Executor代码实例
一、通过SqlSessionFactory创建sqlsession,再由Sqlsession获取session对象,然后通过session中的执行器Executor,去执行MapperStatement封装的sql语句
@Test publicvoidfindAll()throwsIOException{ //1.读取配置文件 InputStreamin=Resources.getResourceAsStream("SqlMapConfig.xml"); //2.创建SqlSessionFactory的构建者对象 SqlSessionFactoryBuilderbuilder=newSqlSessionFactoryBuilder(); //3.使用构建者创建工厂对象SqlSessionFactory SqlSessionFactoryfactory=builder.build(in); //4.使用SqlSessionFactory生产SqlSession对象 SqlSessionsession=factory.openSession(); Listusers=session.selectList("findAll"); /* //5.使用SqlSession创建dao接口的代理对象(接口绑定原理使用的jdk动态代理) UserDaouserDao=session.getMapper(UserDao.class); //6.使用代理对象执行查询所有方法 List users=userDao.findAll(); */ for(Useruser:users){ System.out.println(user); } //7.释放资源 session.close(); in.close(); }
二、执行器Executor的分类
- SimpleExecutor:默认的Executor,每个SQL执行时都会创建新的Statement,继承了
- BaseExecutor
- CachingExecutor:可缓存数据的Executor,用于二级缓存的执行器
- BatchExecutor:用于批处理的Executor
- ReuseExecutor:相同的SQL会服用的Statemen
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。