mybatis单表内的一对多

商品分类里有家用电器,家用电器也有多个分类

数据库里的parent_id引用了本表的id字段

实体类

package com.yq.cn.dao.entity;

import java.util.Set;

public class Category {

    private Long id;

    private String name;

    private Long parentId;


    private Set<Category> children;

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public Long getParentId() {

return parentId;

}

public void setParentId(Long parentId) {

this.parentId = parentId;

}

public Set<Category> getChildren() {

return children;

}

public void setChildren(Set<Category> children) {

this.children = children;

}

}

resultMap为

<resultMap id="childResultMap" type="com.yq.cn.dao.entity.Category">

<id column="pid" property="id" jdbcType="BIGINT" />

<result column="pname" property="name" jdbcType="VARCHAR" />

<collection property="children" ofType="com.yq.cn.dao.entity.Category">

<id column="cid" property="id" jdbcType="BIGINT" />

<result column="cname" property="name" jdbcType="VARCHAR" />

</collection>

</resultMap>

sql语句为

<select id="listAll" resultMap="childResultMap">

SELECT t.`id` pid,t.`name` pname,t2.`id` cid,t2.`name` cname 

FROM tbl_category t,tbl_category t2 

WHERE t.id=t2.parent_id

</select>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1感恩早上五点不到起来学车 2感恩教练准时到达学车里方 3感恩练车路上的车子,是不断练习自己的车技。 4感恩姐夫的...
    deba7ab00a2e阅读 111评论 0 0
  • 差不多两年前,我曾待过青城驿站。 今早我又置身于呼市青城驿站。 在我所居住的城市中,深圳这个现代化大都市中却没有这...
    心妍2020阅读 333评论 0 0
  • “人走茶凉”,不知曾让多少人魂惊梦颤,黯然神伤,也不知误了多少人的正义良心慈悲情怀! 没错,误了! 因为从来只有人...
    巴山来客十废纸书生阅读 671评论 3 13