mybatis中的映射通过collection来封装对象的list值

来源:互联网 发布:数据交换方案 编辑:程序博客网 时间:2024/04/25 20:58

userMapper.xml:

<select id="getUserList" resultMap="familyResult">select<include refid="useridNames" /><!-- 引用sql id -->from userinfo</select><resultMap id="familyResult" type="com.chenjun.Family"><collection property="users" ofType="com.chenjun.User"<span style="color:#FF0000;"> resultMap="getUserLists"</span>> <!--将查到的结果一条记录一条记录地封装到user中,得到users值,注入到Family中--><id property="id" column="id" />           <!--这两行也可以抽出来,单独作为一个映射上面红色部分--><result property="name" column="name" /></collection></resultMap><!-- 定义sql片断,用于重用 --><sql id="useridNames">id,name</sql>

dao:

 public Family getUserList();

测试代码:

private static void printUsers(SqlSession sqlSession, UserDao userDao)    {       Family family = userDao.getUserList();        for (User user : family.getUsers())        {            System.out.println(user.getId() + ":" + user.getName());        }    }

执行结果:

43:张四21:张五9:ameraca8:张三


0 0
原创粉丝点击