lyang0317 2016-08-20 15:48 采纳率: 0%
浏览 941

使用mybatis遇到的问题

本人使用mybatis遇到一个问题:
返回结果java类定义如下:
public class PersonVO {
private String name;
private List persons;
}
public class Person {
private String name;
private int age;
privaet String sex;
}
xml结果集定义如下(已简化,结果类型可能写法不准确看大致意思就行):

 <resultMap id="" type="PersonVO">
  <result property="name" column="name"/>
    <association property="persons" resultMap="Person"/> 
</resultMap>

<resultMap id="" type="Person">
    <result property="name" column="name"/>
    <result property="age" column="age"/>
    <result property="sex" column="sex"/>
</resultMap>

xml SQL如下:
select name,age,sex from t_person

得出为PersonVO类集合,PersonVO中name对应相同name的Person类集合,实际就像对单表按名称进行了分组
我想问问为什么有这个效果,这里对象的一对多为何能用association关联结果集表示,并且关联的结果集能通过单表查询实现最终查询对象按name分组的效果

  • 写回答

1条回答 默认 最新

  • 骑着毛驴开大奔 2016-08-20 16:13
    关注

    你在写SQL 的时候要连接表, 那么连接表的另一个表就是对应你现在的association的关联映射,
    我是这么理解的,从hibernate中简化而来的。 你可以去看看hibernate ,
    因为要实现半自动映射,那么映射关联了,那么SQL 上也必须要对应才能实现。 association就这个框架就是这样设定的吧

    评论

报告相同问题?

悬赏问题

  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码