1
2.config/配置文件
SqlMapConfig.xml
<!-- 和spring整合后,使用mapper扫描器,这里不需要配置了 -->
<!-- <package name="com.app.ssm.mapper" /> -->
spring/applicationContext.xml
<!-- Mapper包实现类 -->
<!-- <bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.app.ssm.mapper.UserMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory"/>
</bean> -->
<!-- mapper批量扫描,从mapper包中扫描出mapper接口,自动创建代理对象并且在spring容器中注册
遵循规范:将mapper.java和mapper.xml映射文件名称保持一致,且在一个目录 中
自动扫描出来的mapper的bean的id为mapper类名(首字母小写)
-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 指定扫描的包名
如果扫描多个包,每个包中间使用半角逗号分隔
-->
<property name="basePackage" value="com.app.ssm.mapper"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
3.src/ssm包
DAO接口
public interface UserDao {
// R 根据id查询用户信息
public User findUserById(int id) throws Exception;
}
DAO实现接口
package com.app.ssm.dao.impl;
import java.util.Date;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.support.SqlSessionDaoSupport;
import com.app.ssm.dao.UserDao;
import com.app.ssm.po.User;
/**
*@Title UserDaoImpl.java
*@description TODO
*@time 2016年9月8日 上午11:52:11
*@author wyz
*@version 1.0
**/
public class UserDaoImpl extends SqlSessionDaoSupport implements UserDao {
@Override
public User findUserById(int id) throws Exception {
SqlSession sqlSession = this.getSqlSession();
User user = sqlSession.selectOne("test.findUserById", id);
return user;
}
}
4.test单元测试
package com.app.ssm.dao.impl;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.app.ssm.dao.UserDao;
import com.app.ssm.po.User;
/**
*@Title UserDaoImplTest.java
*@description TODO
*@time 2016年9月13日 下午2:52:23
*@author wyz
*@version 1.0
**/
public class UserDaoImplTest {
private ApplicationContext applicationContext;
@Before
public void setUp() throws Exception {
applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");
}
@Test
public void testFindUserById() throws Exception {
UserDao userDao = (UserDao) applicationContext.getBean("userDao");
User user = userDao.findUserById(1);
System.out.println(user);
}
}
5
6