03-编写dao实现类方式
一、实现类
1.代码
package dao.impl;
import dao.IUserDao;
import domain.User;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import java.util.List;
public class UserDaoImpl implements IUserDao
{
private SqlSessionFactory factory;
public UserDaoImpl(SqlSessionFactory factory){
this.factory=factory;
}
public List<User> findAll()
{
//1.使用工厂创建 SqlSession 对象
SqlSession session=factory.openSession();
//2.使用session执行查询所有的方法
List<User> users=session.selectList("dao.IUserDao.findAll");
//3.关闭session
session.close();
//4.返回查询结果
return users;
}
}
2.解释
session.selectList("dao.IUserDao.findAll");
这么写是为了与 mapping 中 namespace 相对应,不然那么多个接口,总有接口重名,这个时候我们就要指出接口类
3.注意
在开发时不采用直接写实现类的方式