组团学

MyBatis编写Dao实现类

阅读 (833416)

1、创建实现类

恢复我们的IUserDao.xml文件

UserDaoImpl.java

package com.tianyi.dao.impl; import com.tianyi.dao.IUserDao; import com.tianyi.javabean.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() { SqlSession session =factory.openSession(); List <User> users=session.selectList("com.tianyi.dao.IUserDao.findAll"); session.close(); return users; } }

2、修改测试类

MbTest.java

package com.tianyi.test; import com.tianyi.dao.IUserDao; import com.tianyi.dao.impl.UserDaoImpl; import com.tianyi.javabean.User; import org.apache.ibatis.io.Resources; //import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import java.io.IOException; import java.io.InputStream; import java.util.List; public class MbTest { public static void main(String[] args) throws IOException { //1.读取配置文件 InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml"); //2.创建 SqlSessionFactory 的构建者对象 SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); //3.使用构建者创建工厂对象 SqlSessionFactory SqlSessionFactory factory = builder.build(in); // //4.使用 SqlSessionFactory 生产 SqlSession 对象 // SqlSession session = factory.openSession(); // //5.使用 SqlSession 创建 dao 接口的代理对象 // IUserDao userDao = session.getMapper(IUserDao.class); //产生实例对象 IUserDao userDao=new UserDaoImpl(factory); //6.使用代理对象执行查询所有方法 List <User>users = userDao.findAll(); for(User user : users) { System.out.println(user); } // //7.释放资源 // session.close(); in.close(); } }
需要 登录 才可以提问哦