<!-- 用户信息综合查询总数 parameterType:指定输入类型和findUserList一样 resultType:输出结果类型 --> <selectid="findUserCount"parameterType="com.iot.mybatis.po.UserQueryVo"resultType="int"> SELECT count(*) FROM user WHERE user.sex=#{userCustom.sex} AND user.username LIKE '%${userCustom.username}%' </select>
<!-- 定义resultMap 将SELECT id id_,username username_ FROM USER 和User类中的属性作一个映射关系 type:resultMap最终映射的java对象类型,可以使用别名 id:对resultMap的唯一标识 --> <resultMaptype="user"id="userResultMap"> <!-- id表示查询结果集中唯一标识 column:查询出来的列名 property:type指定的pojo类型中的属性名 最终resultMap对column和property作一个映射关系 (对应关系) --> <idcolumn="id_"property="id"/> <!-- result:对普通名映射定义 column:查询出来的列名 property:type指定的pojo类型中的属性名 最终resultMap对column和property作一个映射关系 (对应关系) --> <resultcolumn="username_"property="username"/> </resultMap>
使用resultMap作为statement的输出映射类型
1 2 3 4 5 6 7
<!-- 使用resultMap进行输出映射 resultMap:指定定义的resultMap的id,如果这个resultMap在其它的mapper文件,前边需要加namespace --> <selectid="findUserByIdResultMap"parameterType="int"resultMap="userResultMap"> SELECT id id_,username username_ FROM USER WHERE id=#{value} </select>
mapper.java
1 2
//根据id查询用户信息,使用resultMap输出 public User findUserByIdResultMap(int id)throws Exception;