Spring_22_整合Mybatis方式二
整合Mybatis方式二 SqlSessionDaoSupport
-
让实现类继承 org.mybatis.spring.support.SqlSessionDaoSupport;
public class UserMapperImplTwo extends SqlSessionDaoSupport implements UserMapper
-
继承之后可以通过父类的getSqlSession()方法获取到SqlSession对象, 就不需要在application.xml文件中再进行SqlSession的配置了,但是需要给实现类传入一个SqlSessionFactory对象
<!--注入实现类 传入sqlSessionFactory--> <bean name="queryUser2" class="com.shi.mapper.UserMapperImplTwo"> <property name="sqlSessionFactory" ref="sqlSessionFactory"/> </bean>
-
代码
-
实现类
public class UserMapperImplTwo extends SqlSessionDaoSupport implements UserMapper {
public List<User> queryUser() { /* //获取SqlSession SqlSessionTemplate sqlSession=getSqlSessionTemplate(); //注册映射文件 UserMapper userMapper=sqlSession.getMapper(UserMapper.class); //返回执行结果 return userMapper.queryUser(); */ //总结一行代码 return getSqlSession().getMapper(UserMapper.class).queryUser(); } }
-
测试类
@Test
public void testQueryUserTwo() throws IOException {
//注册配置文件
ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");//获取对象 UserMapper userMapper=context.getBean("queryUser2",UserMapper.class); //执行方法 List<User> userList=userMapper.queryUser(); //输出 for (User user:userList) { System.out.println(user); }
}
-