为了账号安全,请及时绑定邮箱和手机立即绑定

应如何正确地描述下面的MyBatis语句的执行过程?

应如何正确地描述下面的MyBatis语句的执行过程?

喵喔喔 2019-02-22 14:11:20
应如何正确地描述下面的MyBatis语句的执行过程? 我的理解如下,但感觉很拗口,似懂非懂的感觉: 由session.selectList("com.kgc.mybatis.pojo.UserMapper.getUsers2")可知, 将去执行mapper文件中id为getUsers2的select语句, 而在id为getUsers2的select语句中,由于resultMap="UserBasicMap", 又会去id="UserBasicMap"的resultMap中找,... User类: public class User { private String uid; private String uname; private List<Book> books; //setter,getter方法 } Book类: public class Book { private String bid; private String bname; //setter,getter方法 } 测试类: @Test public void getUsers2Test(){ List<User> userList = session.selectList("com.kgc.mybatis.pojo.UserMapper.getUsers2"); for(User user : userList){ System.out.println(user); } } Mapper文件: <resultMap type="com.kgc.mybatis.pojo.User" id="UserBasicMap"> <id property="uid" column="uid"/> <result property="uname" column="uname" /> <collection property="books" ofType="com.kgc.mybatis.pojo.Book"> <id property="bid" column="bid" /> <result property="bname" column="bname" /> </collection> </resultMap> <select id="getUsers2" resultMap="UserBasicMap"> select * from t_user t1 left join t_book t2 on t1.uid = t2.userid </select>
查看完整描述

1 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

1.session.selectList() 里面可以传入一个标识就行,不用传全类名.
2.Mapper文件中的<select><select> 中可以设置传入参数类型.
3.UserBasicMap只是规定封装数据的对象属性.

查看完整回答
反对 回复 2019-03-01
  • 1 回答
  • 0 关注
  • 560 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号