目前我了解的有两种方法进行整合开发
分别是传统DAO开发,Mapper接口方式
- 传统DAO开发步骤
- 把Spring,Mybatis,中间包,以及数据库驱动jar都导入xian项目
- db.properties文件(把连接数据库的配置外在化)
- Spring配置文件配置,内容包括(读取db,配置数据源,事务管理器,事务注解,配置Mybatis工厂sqlSe's'essionFactory(包括数据源和mybatis配置wen文件)
- Mybatis配置文件
- 写DAO接口以及接口的实现类,在实现类里面注入SqlSessionFactory然后在方法体里面创造sqlSession
- 写持久层和映射文件
- 写测试类,getBean(DAO)
2.Mapperji接口方式的开发整合
- 与第一种方法前4步一样
- 写接口以及ying映射文件,放在同一包里面,这样就不用写DAO的实现类了,Mapper接口的的名称和对应Mapper.xml映射文件名称要一样,接口中fa方法名要和xml定义每个执行语句id相同
- 参数类型也要相同
- 这些开发规范都符合的话,MyBatisji就会自动实现Mapperjie'接口实现类的代理对象,cong从而简化开发
- 在Spring配置一个bean,类型是MapperFactoryBean(包括要定义接口和sqlsessinFactoy)
- 测试类
补充:在实际项目中,DAO层很多接口,如果每个接口都在配置文件中配置,那么会空前增加工作量,使得Spring配置文件臃肿,因此提供了一种自动扫描的xing形式来配置Mybatis映射器,采用MapperScannerConfigurer类
使用方法很简单,只要在Spring配置文件编写告诉它扫描哪个包就好