Mybatis之关联关系映射

一对多,多对一 多对多

(Order,Customer,News,Category皆为表)
多对一中mapper映射文件

  <resultMap id="manyToOne" type="com.zking.ssm.model.Order" >
    <id column="order_id" property="orderId" jdbcType="INTEGER" javaType="java.lang.Integer" />
    <result column="order_no" property="orderNo" jdbcType="VARCHAR" javaType="java.lang.String" />
    <result column="cid" property="cid" jdbcType="INTEGER" javaType="java.lang.Integer" />
    <!--多对一-->
    <association property="customer" javaType="com.zking.ssm.model.Customer">
      <id column="customer_id" property="customerId" javaType="java.lang.Integer"/>
      <result column="customer_name" property="customerName" javaType="java.lang.String"/>
    </association>
  </resultMap>

一对多mapper映射文件

  <resultMap id="oneToMany" type="com.zking.ssm.model.Customer">
    <id column="customer_id" property="customerId" javaType="java.lang.Integer"/>
    <result column="customer_name" property="customerName" javaType="java.lang.String"/>
    <!--一对多-->
    <collection property="orders" ofType="com.zking.ssm.model.Order">
      <id column="order_id" property="orderId" javaType="java.lang.Integer"/>
      <result column="order_no" property="orderNo" jdbcType="VARCHAR" javaType="java.lang.String" />
      <result column="cid" property="cid" jdbcType="INTEGER" javaType="java.lang.Integer" />
    </collection>
  </resultMap>

多对多mapper映射文件
注意:在这多对多中category表的mapper映射文件也需要配置

 <resultMap id="ManyToMany" type="com.zking.ssm.model.News">
    <id property="newsId" javaType="java.lang.Integer" column="news_id" />
    <result property="title" javaType="java.lang.String" column="title"/>
  <!--多对多-->
    <collection property="category" ofType="com.zking.ssm.model.Category">
        <id property="categoryId" column="category_id"/>
        <result property="categoryName" column="category_name"/>

    </collection>

  </resultMap>

collection :一对多、多对多
association:多对一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值