mybatis传统dao层开发

    科技2022-07-11  106

    就是加上了dao层的实现类,没有用sqlSession的getMapper方法创建代理对象,使用了sqlSession的selectList方法来实现

     

     相较于目前使用的基于xml配置代理对象的dao接口开发(见上篇博客),加入了一下内容

     UserDaoImpl

    package Dao; import Bean.User; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import java.util.List; public class UserDaoImpl implements UserDao{ private SqlSessionFactory sqlSessionFactory; public UserDaoImpl(SqlSessionFactory sqlSessionFactory){ this.sqlSessionFactory=sqlSessionFactory; } public List<User> findAll() { SqlSession sqlSession = sqlSessionFactory.openSession(); List<User> user = sqlSession.selectList("Dao.UserDao.findAll"); sqlSession.close(); return user; } }

     test

    @Test public void test() throws Exception{ //1.加载配置文件 InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml"); //2.根据配置文件创建sqlSessionFactory对象 SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(resourceAsStream); //3.创建dao对象,执行其sqlSession的selectList方法 UserDao userDao=new UserDaoImpl(sqlSessionFactory); //4.执行方法 List<User> all = userDao.findAll(); for(User user:all){ System.out.println(user); }

     

    Processed: 0.009, SQL: 8