一、创建持久层接口
public interface IUserDao {
public List<User> findByName(String username)
}
二、创建持久层接口实现类
public class IUserDaoImpl implements IUserDao {
private SqlSessionFactory factory;
public IUserDaoImpl(SqlSessionFactory factory) {
this.factory = factory;
}
public List<User> findByName(String username) {
SqlSession session = factory.openSession();
List<User> users = session.selectList("chu.yi.bo.dao.IUserDao.findByName",username);
session.close();
return users;
}
}
三、创建持久层映射文件
<mapper namespace="chu.yi.bo.dao.IUserDao">
<select id="findByName" resultType="user" parameterType="string">
select * from user where username like '%${value}%';
</select>
</mapper>
四、测试
public void testMyBatis throws Exception {
// 读取配置文件
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
// 创建构建者对象
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
// 创建 SqlSession 工厂对象
SqlSessionFactory factory = builder.build(in);
// 创建 Dao 接口的实现类
IUserDaoImpl userDao = new IUserDaoImpl(factory);
List<User> users = userDao.findByName("王");
for(User user : users) {
System.out.println(user);
}
// 释放资源
in.close();
}