一、mapper:
mapper.xml
mapper.java
二、通过MapperScannerConfigurer进行mapper扫描
三、测试
mapper.xml
<mapper namespace="dancheng.ssm.mapper.UserMapper">
<select id="findUserById" parameterType="int" resultType="user">
SELECT * FROM USER WHERE id=#{value}
</select>
</mapper>
mapper.java
public interface UserMapper {
//根据用户id查询
public User findUserById(int id) throws Exception;
}
二、通过MapperScannerConfigurer进行mapper扫描
<!-- mapper的批量扫描,从mapper的包中扫描出mapper的接口,自动的来创建代理对象并且在spring容器中注册 -->
<!-- 遵循规范:将mapper.xml和mapper.java映射文件名称保持一致,且在一个目录中 -->
<!-- 自动扫描出来的mapper的bean的id为mapper类名(首字母小写) -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- basePackage指定扫描的包名 -->
<!-- 如果扫描多个包,每个包中间使用半角逗号分隔 -->
<property name="basePackage" value="dancheng.ssm.mapper" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>
三、测试
public class UserMapperTest {
private ApplicationContext applicationContext;
@Before
public void setUp() throws Exception {
applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");
}
@Test
public void testFindUserById() throws Exception {
UserMapper userMapper = (UserMapper)applicationContext.getBean("userMapper");
User user = userMapper.findUserById(1);
System.out.println(user);
}
}