实现创建一个接口后把mapper.xml由mybatis 生成接口的实现类,通过调用接口对象就可以获取 mapper.xml 中编写的 sql.
实现步骤
1.创建一个接口,接口包名和接口名与 mapper.xml 中<mapper>namespace 相同
2.接口中方法名和 mapper.xml 标签的 id 属性相同
3.如果接口中方法为多个参数,可以省略 parameterType
代码步骤如下:
1.在全局配置文件mybatis.xml使用<mappers>使用<package>
<mappers>
<package name="com.xcy.mapper">
</mappers>
2.在com.xcy.mapper下新建接口
public interface UserMapper{
List<User> selAll();
}
3.在com.xcy.mapper包下新建UserMapper.xml文件<mapper namespace=“com.xcy.mapper.UserMapper”>,namespace必须和接口全限定路径一致,id值必须和接口中方法名相同,如果接口中方法为多个参数,可以省略 parameterType。
<mapper namespace="com.xcy.mapper.UserMapper">
<select id="selAll" resultType="user">
select * from user
</select>
</mapper>
测试代码:
InputStream is = Resources.getResourceAsStream("mybatis.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = factory.openSession();
UserMapper userMapper = session.getMapper(UserMapper.class);
List<User> list = userMapper.selAll();
for (User user : list) {
System.out.println(user);
}