mybatis中一对多的关系映射。比如产品分类表对应多个产品明细表

1)需要在产品分类表里加入产品明细表的集合对象的数据:

  public class Cate {

         private Integer id;

         public Integer getId() {

                   return id;

         }

         public void setId(Integer id) {

                   this.id = id;

         }

         public String getName() {

                   return name;

         }

         public void setName(String name) {

                   this.name = name;

         }

         public String getDescription() {

                   return description;

         }

         public void setDescription(Stringdescription) {

                   this.description = description;

         }

         private String name;

         private String description;

        

         //形成一对多的关系映射

         privateList<Product> productList;

         publicList<Product> getProductList() {

                   returnproductList;

         }

         public voidsetProductList(List<Product> productList) {

                   this.productList= productList;

         }

}

2)配置结果集:

   <resultMaptype="com.gxa.bj.model.Cate" id="cateMapResult">

        <id column="cateid"property="id"></id>

        <resultproperty="description"column="description"></result>

        <result property="name"column="name"></result>

        <!-- ofType:表示的是集合里的pojo的类型:

             resultType:表示对应的pojo的映射数据

         -->

        <collectionproperty="productList" ofType="com.gxa.bj.model.Product"

        resultMap="com.gxa.bj.dao.ProductMapper.productInfoResult">

            

        </collection>

</resultMap>

3)编写相应的sql语句的配置:(注意对于列名相同的情况,比如id相同的处理,加入不同的列名进行区分)

    <select id="selectAllCate"resultMap="cateMapResult">

      Select c.id as cateid,c.name,c.description,p.*

      From cate c,product p

      Where c.id=p.cate_id

   </select>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值