在实际的开发的过程中,我一般是按照三层架构来开发的。sqlsession底层通过动态代理,创建新的代理类,只需要一个接口就能实现查询的操作
Dao层接口
public interface bookDao {
List<book> findAll();
}
映射文件中的配置namespace,写接口的全路径名,id写对应要调用的方法
<mapper namespace="com.shuai.Dao.bookDao">
<select id="findAll" resultType="com.shuai.domain.book">
select * from p;
</select>
测试类:
public class test {
SqlSessionFactory sqlSessionFactory=null;
@Before
public void init(){
InputStream inputStream=this.getClass().getClassLoader().getResourceAsStream("Config.xml");
sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
}
@Test
public void test(){
SqlSession sqlSession= sqlSessionFactory.openSession();
bookDao bookDao= sqlSession.getMapper(bookDao.class);
List<book> bookList= bookDao.findAll();
for (book book : bookList) {
System.out.println(book);
}
}
}
网友评论