#mapper使用
##集合篇
###list集合
mybatis默认映射为list,具体用法如下所示
用例1:
<!--mapper-model:OrderInfo -->
@Data
public class OrderInfo {
Integer id;
Integer productId;
Integer userId;
Integer status;
Byte deleted;
}
<!--mapper-interface:OrderInfoMapper -->
public interface OrderInfoMapper {
/**
* 根据用户ID获取订单列表
* @param ids
* @return
*/
List<OrderInfo> selectOrderByUserIds(List<Integer> ids);
}
<!--mapper-xml:OrderInfoMapper.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yinxuep.mybatis.mapper.OrderInfoMapper">
<resultMap id="BaseResultMap" type="com.yinxuep.mybatis.vo.OrderInfo">
<id column="id" jdbcType="INTEGER" property="id"/>
<result column="user_id" jdbcType="INTEGER" property="userId"/>
<result column="product_id" jdbcType="INTEGER" property="productId"/>
<result column="status" jdbcType="INTEGER" property="status"/>
<result column="deleted" jdbcType="TINYINT" property="deleted"/>
</resultMap>
<select id="selectOrderByUserIds" resultMap="BaseResultMap" parameterType="**java.util.List**">
select id,user_id,product_id,status,
from d_order_info
where
deleted = 0
and user_id in
<foreach collection="**list**" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</select>
</mapper>
用例2:
<!--model-query:OrderInfoQuery -->
@Data
public class OrderInfoQuery {
List<Integer> userIds;
}