【mybatis】mybatis返回实体类List集合

今天将dao层注解的方法改为xml文件的形式配置,发现在查询的时候只能查出一个字段的信息,其他信息查不出来,但我确实是返回了一个List数组,查文档发现如果是返回实体类List,不应该将resultType中的list返回。

实体类

@Data
public class UserExt {
   private String userid;
    private String u_name;
    private String u_location;
    private String group;
    private String u_institute;
    private String u_class;

}

注解中的@Data为lombok中的方法,自动生成get,set等方法。

xml文件resultMap

  <resultMap id="UserExtMap" type="com.schedule.model.entity.schedule.UserExt">
        <result column="userid" jdbcType="VARCHAR" property="userid"/>
        <result column="u_name" jdbcType="VARCHAR" property="u_name"/>
        <result column="u_location" jdbcType="VARCHAR" property="u_location"/>
        <result column="group" jdbcType="VARCHAR" property="group"/>
        <result column="u_institute" jdbcType="VARCHAR" property="u_institute"/>
        <result column="u_class" jdbcType="VARCHAR" property="u_class"/>
    </resultMap>

xml 查找方法

<select id="findUserNotByClass" resultMap="UserExtMap">
        SELECT
       u_name,u_location, userid ,GROUP_CONCAT(d_name) AS `group`,u_institute,u_class
        FROM
        v_user
        <where>
            userid NOT IN(SELECT  userid  FROM course  WHERE c_week=#{week} AND 		c_lesson=#{lesson}
            AND (#{startWeek} BETWEEN c_startweek AND c_endweek)
            AND (c_weektype=0 OR MOD(c_weektype,2)=MOD(#{startWeek},2)))

            <if test="useridList !=null and useridList.size>0">
                AND userid IN

                <foreach item="item" index="index" collection="useridList"
                         open="(" separator="," close=")">
                    ${item}
                </foreach>
            </if>

            GROUP BY userid;
        </where>
    </select>

select 中的 resultMap对应的是 resultMap实体类映射类

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值