文档章节

mybatis关联查询

quickhelper
 quickhelper
发布于 2015/03/03 11:16
字数 324
阅读 8
收藏 1
<resultMap type="com.whty.mytest.entity.People" id="pbaseResultMap">
<result column="people_id" property="people_id"/>
<result column="name" property="name"/>
<result column="age" property="age"/>
<result column="sex" property="sex"/>
<association property="clothes" column="{prop1=people_id,prop2=name}" javaType="java.util.ArrayList"
resultMap="cbaseResultMap"></association>
</resultMap>

<resultMap type="com.whty.mytest.entity.Clothes" id="cbaseResultMap">
<result column="clothes_id" property="clothes_id"/>
<result column="people_id" property="people_id"/>
<result column="brand" property="brand"/>
<result column="clour" property="clour"/>
</resultMap>

<select id="getPeopleList" resultMap="pbaseResultMap" parameterType="Integer">
select p.*,c.* from test_people p
left join test_clothes c on p.people_id = c.people_id and p.name = c.brand
<if test="_parameter != null and _parameter != ''">
where p.people_id = #{_parameter}
</if>
public class Clothes {

    private Integer clothes_id;
    private String clour;
    private Integer people_id;
    private String brand;

    public String getClour() {
        return clour;
    }
    public void setClour(String clour) {
        this.clour = clour;
    }
    public Integer getPeople_id() {
        return people_id;
    }
    public void setPeople_id(Integer people_id) {
        this.people_id = people_id;
    }
    public String getBrand() {
        return brand;
    }
    public void setBrand(String brand) {
        this.brand = brand;
    }
    public Integer getClothes_id() {
        return clothes_id;
    }
    public void setClothes_id(Integer clothes_id) {
        this.clothes_id = clothes_id;
    }
}
public class People {

    private Integer people_id;
    
    private String name;
    
    private Integer age;
    
    private String sex;
    
    private String aaaaa;
    
    private List<Clothes> clothes;

    public List<Clothes> getClothes() {
        return clothes;
    }
    public void setClothes(List<Clothes> clothes) {
        this.clothes = clothes;
    }
    public String getAaaaa() {
        return aaaaa;
    }
    public void setAaaaa(String aaaaa) {
        this.aaaaa = aaaaa;
    }
    public People(String name,Integer age){
        this.name = name;
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public Integer getPeople_id() {
        return people_id;
    }
    public void setPeople_id(Integer people_id) {
        this.people_id = people_id;
    }
}
//D层调用方法
public List<People> getPeopleList(String people_id);
create table TEST_PEOPLE
(
  people_id NUMBER not null,
  name      NVARCHAR2(20),
  age       NUMBER,
  sex       NVARCHAR2(20),
  aaaaa     NVARCHAR2(30)
)
create table TEST_CLOTHES
(
  "clothes_ID" NUMBER not null,
  people_id    NUMBER not null,
  brand        NVARCHAR2(20),
  clour        NVARCHAR2(20)
)


© 著作权归作者所有

共有 人打赏支持
quickhelper
粉丝 1
博文 82
码字总数 5482
作品 0
武汉
程序员
Mybatis关联结果查询分页方法

在Mybatis分页插件的说明中有如下内容 不支持的情况 对于关联结果查询,使用分页得不到正常的结果,因为只有把数据全部查询出来,才能得到最终的结果,对这个结果进行分页才有效。因而如果是...

Liuzh_533
2014/06/05
0
10
mybatis初步----查询之resultMap和resultType

MyBatis的每一个查询映射的返回类型都是ResultMap,只是当我们提供的返回类型属性是resultType的时候,MyBatis对自动的给我们把对应的值赋给resultType所指定对象的属性,而当我们提供的返回...

microb
2013/10/12
0
0
MyBatis 实践 -动态SQL/关联查询

标签: Java与存储 动态SQL 动态SQL提供了对SQL语句的灵活操作,通过表达式进行判断,对SQL进行拼接/组装. if 对查询条件进行判断,如果输入参数不为空才进行查询条件的拼接. mapper 会自动处理...

hanqing280441589
2016/02/28
0
0
Mybatis--resultType和resultMap

一、概述 MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,但是resultType跟...

北京_
2014/08/27
0
1
MyBatis学习总结(五)——实现关联表查询

一、一对一关联 1.1、提出需求   根据班级id查询班级信息(带老师的信息) 1.2、创建表和数据   创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就...

Carl_
2015/08/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

高三暑假我是怎么想开去学linux系统的

高三的时候,我有一句口头禅:“老了老了,现在做题越来越迟钝了”。当时整天日夜苦读,体重日益增加,脸色越来越黯淡,我在终于熬过了高考的时候,简直心里面乐得开了花。我终于可以去做自己...

linuxprobe16
10分钟前
0
0
Python 获得命令行参数的方法

需要模块:sys 参数个数:len(sys.argv) 脚本名: sys.argv[0] 参数1: sys.argv[1] 参数2: sys.argv[2]

编程老陆
17分钟前
0
0
链队

队列用链表来表示时,需要用两个变量来记录队列两端的变化:theFront,theBack. 根据链接方向的不同,链队有两种链接方式(其实就是链表的头插入节点和尾插入节点,头删除节点和尾删除节点)。...

Frost729
20分钟前
0
0
IDEA toString() json模板

public java.lang.String toString() {java.lang.StringBuilder builder = new java.lang.StringBuilder();#set ($i = 0)#foreach ($member in $members)#if ($i == 0)builder.appen......

Mtok
30分钟前
0
0
Dubbo内核实现之SPI简单介绍

Dubbo采用微内核+插件体系,使得设计优雅,扩展性强。那所谓的微内核+插件体系是如何实现的呢!即我们定义了服务接口标准,让厂商去实现(如果不了解spi的请谷歌百度下), jdk通过ServiceLo...

明理萝
35分钟前
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部