ndsc_avaj
2009-09-13 22:42
浏览 339
已采纳

关于iBatis返回自定义类型的问题。

现在我想把一个数据库表里的数据取出来。
数据库表TSALE的定义如下:
字段:id, depart, prop_code, product_id
字段id是主键,自动递增。
depart是部门id,

prop_code是产品编码,

product_id是具体一个产品的id,一种产品编码(prop_code)对应有很多产品,也就是对应很多product_id。

现在我想将depart, prop_code, product_id取出,
将他们用对象关联起来。
depart存放在 DepartBean 类里,
SELECT DEPART FROM TSALE GROUP BY DEPART,
取出这个表里所有的DEPART。

DepartBean 里还有一个List propList成员变量。

存放的就是 用 SELECT PROP_CODE FROM TSALE WHERE DEPART = #depart# GROUP BY PROP_CODE 。
取出一个部门有的产品种类。

PropBean 里有一个List productList成员变量。
存放product_id。
SELECT PRODUCT_ID FROM TSALE WHERE PROP_CODE = #propCode# AND DEPART = #depart#
现在我想用resultMap定义一个复杂类型,直接将这表里的关系都取出来。

请大家看一下,最好能按照现在的内容写代码。

谢谢了。

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • weixin_42196459 2009-09-14 14:52
    已采纳

    举个例子吧
    [code="java"]






    select * from table where id=#id#

    对应的Address.getAddressById
    <select id="getAddressById" resultClass="AddressBean" parameterClass="string">
        select * from address where id=#id#
    </select>
    

    [/code]
    这样就可以关联查询了,至于第三级的关联,你要写在第二级的SQL中,比如说就写在getAddressById中

    已采纳该答案
    打赏 评论
  • thinblue 2009-09-14 10:30

    不知道是我理解错了还是别的 ibatis 好像不能这样取把

    打赏 评论

相关推荐 更多相似问题