大家好,欢迎来到IT知识分享网。
在官方文档中对resultType做了如下介绍:从这条语句中返回的期望类型的类的完全限定名或别名。注意如果是集合情形,那应该是集合可以包含的类型,而不能是集合本身。使用 resultType 或 resultMap,但不能同时使用。
mybatis中resultType可选类型:
1,java的基础类型及其包装类int,double和java.lang.Integer,java.lang.Double等
2,实体类,自己定义的实体类
3,map类型,如果使用resultMap这里可以使用自定义map,本文只介绍resultType
4,集合,即返回的是一个List集合,其中该集合的类型可以为1,2,3中提到的类型
基础类型demo:Dao层的返回类型为int或者Integer
<mapper namespace="com.xx.xx.dao.UserMapper">
<!-- 返回值为int,resultType为int ,java.lang.Integer也可以-->
<select id="countUser" resultType="int">
select count(*) from user
</select>
</mapper>
实体类demo:
Dao层的返回类型为User,这里演示的时实体类和数据库字段一致的情况,如果不一致需要使用resulMap自定义map,也可以直接使用map,后面有介绍直接使用map的demo
<mapper namespace="com.xx.xx.dao.UserMapper">
<!-- 返回值为实体类,resultType为User-->
<select id="getUser" resultType="User">
select * from User where id=#{id}
</select>
</mapper>
Map的demo:
Dao层的返回类型为Map<String, Object>key是对应的column值,value是数据中的数据
<mapper namespace="com.xx.xx.dao.UserMapper">
<!-- 返回值为Map<String,Object>,resultType为map-->
<select id="getUserSelective" resultType="map">
select name,address,salary from User where id=#{id}
</select>
</mapper>
List集合demo:
Dao层的返回类型为List<User>,这里只展示了实体类集合,只要返回的值是多条数据都是集合,集合类型就是resultType中的值。
<mapper namespace="com.xx.xx.dao.UserMapper">
<!-- 返回值为List<User>,resultType为User-->
<select id="getUserList" resultType="User">
select * from user
</select>
</mapper>
返回List<Map<String, Object>>
List<Map<String,Object>> selectUserMapList();
<select id="selectUserMapList" resultType="java.util.HashMap">
select id,name from
user order by id desc limit 2
</select>
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/21941.html