SSM-MyBatis-11:Mybatis中查询全部用resultmap
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥-------------
实体类很普通,四个字段,编号,名字,作者名,价格
在接口中的方法声明如下
//查全部 public List<Book> findAllBook();
在小配置中如下
<!--resultmap--> <resultMap id="bookMapper" type="Book"> <id column="bookID" property="bookID"></id> <!--默认的自动映射行为是PARTIAL部分映射,就不用写bookname也能装配到--> </resultMap> <!--resultmap--> <select id="findAllBook" resultMap="bookMapper"> select * from book </select>
他默认的自动映射行为是PARTIAL,部分的,也就是开启的,他也可以手动设置,关闭自动映射行为
设置方法是在大配置文件中
<!--<settings> 自动映射行为 <setting name="autoMappingBehavior" value="NONE"/> </settings>-->
它的意思是关闭NONE,这个不用关,所以我就是简单的操作后就注释掉了
测试类中
///查全部用resultmap @Test public void t1SelectAll(){ String path = "mybatis-config.xml"; try { InputStream e = Resources.getResourceAsStream(path); SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory factory = builder.build(e); SqlSession session = factory.openSession(); IBookDAO mapper = session.getMapper(IBookDAO.class); List<Book> list = mapper.findAllBook(); for (Book item:list) { System.out.println(item.getBookName()); } session.close(); } catch (IOException var9) { var9.printStackTrace(); } }