MapperFactoryBean创建dao实现类
属性需要主配置文件和mapper的接口 //项目中不用因为创建多个dao实现类,需要配置多个这样的bean配置
MapperScannerConfig动态代理创建dao实现类
属性需要主配置文件和mapper的接口扫描包
原因是下面的代码
单例创建sqlSessionFactory import java.io.InputStream; 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 { private static SqlSessionFactory sqlSessionFactory; public static SqlSession getSqlSession() throws Exception { InputStream is = Resources.getResourceAsStream("mybatis.xml"); //解释了为什么需要主配置文件 if (sqlSessionFactory == null) { sqlSessionFactory = new SqlSessionFactoryBuilder().build(is); } return sqlSessionFactory.openSession(); } }