摘要:在MySQL数据库中,resultType和resultMap都是用于返回多行查询。二者不能一起用。区别在于后者能解决复杂查询时定的映射问题(比如有两个表相关联,此时就要用resultMap了),希望对大家学习MySQL数据库有所帮助。
在MySQL数据库中,resultType和resultMap都是用于返回多行查询。二者不能一起用。区别在于后者能解决复杂查询时定的映射问题(比如有两个表相关联,此时就要用resultMap了),希望对大家学习MySQL数据库有所帮助。
在返回多行记录时,mybatis都会把它们自动封装成Map,但是resultType只得到了其中的“值”,而resultMap则得到了对应的“键值”。下面是简单的用法:
1、resultType
xml中:
//此处返回的是JikeUser,即返回了一个对象 <select id="loginJikeUserList" resultType="JikeUser"> select * from JikeUser </select>
java测试类中
List<jikeuser> ap=sqlSession.selectList("loginJikeUserList"); for(JikeUser temp:ap){ System.out.println("用户名="+temp.getUserName()); }</jikeuser>
2、resultMap
xml中
<!-- 先设定一个resultMap --> <!--此处子节点中,property是JikeUser中的属性,column是数据库中的列名--> <resultMap type="JikeUser" id="JikeUserMap"> <id property="id" column="id" /> <result property="userName" column="username" /> <result property="passW ord" column="password" /> </resultMap> <!-- 然后引用已经设定好的resultMap --> <select id="selectUsers" resultMap="JikeUserMap"> select id,username,password from JikeUser </select>
java测试中
List<jikeuser> ap=sqlSession.selectList("selectUsers"); for(JikeUser temp:ap){ System.out.println("用户名="+temp.getUserName()); }</jikeuser>
本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号