栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Mybatis多对一关系映射处理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Mybatis多对一关系映射处理

Mybatis多对一关系映射处理三种方式:

数据库表:
t_class

t_student

实体类:
Student.java

public class Student {
    private Integer sid;
    private String name;
    private Cla cla;

    public Student() {
    }

    public Student(Integer sid, String name) {
        this.sid = sid;
        this.name = name;
    }

    public Integer getSid() {
        return sid;
    }

    public void setSid(Integer sid) {
        this.sid = sid;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Cla getCla() {
        return cla;
    }

    public void setCla(Cla cla) {
        this.cla = cla;
    }

    @Override
    public String toString() {
        return "Student{" +
                "sid=" + sid +
                ", name='" + name + ''' +
                ", cla=" + cla +
                '}';
    }
}

Cla.java

package com.example.mybatis;


public class Cla {
    private Integer cid;
    private String cname;

    public Cla() {
    }

    public Cla(Integer cid, String cname) {
        this.cid = cid;
        this.cname = cname;
    }

    public Integer getCid() {
        return cid;
    }

    public void setCid(Integer cid) {
        this.cid = cid;
    }

    public String getCname() {
        return cname;
    }

    public void setCname(String cname) {
        this.cname = cname;
    }

    @Override
    public String toString() {
        return "Cla{" +
                "cid=" + cid +
                ", cname=" + cname +
                '}';
    }
}

一、级联方式处理
StudentoneMapper.java

package com.example.mybatis;

import org.apache.ibatis.annotations.Param;


public interface StudentoneMapper {
    
    Student queryfind(@Param("sid") Integer sid);
    }

StudentoneMapper.xml




 
        
        
        
        
    
    
        select student.*,cla.* from t_student student left join t_class cla on student.cid = cla.cid where student.sid = #{sid}
    

test.java

    @Test
    public void query() throws IOException {
        InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
        SqlSession sqlSession = sqlSessionFactoryBuilder.build(is).openSession(true);
        StudentoneMapper mapper = sqlSession.getMapper(StudentoneMapper.class);
        Student queryfind = mapper.queryfind(1);
        System.out.println(queryfind);
    }


二、association处理
StudentoneMapper.java

package com.example.mybatis;

import org.apache.ibatis.annotations.Param;


public interface StudentoneMapper {
    
    Student queryfind(@Param("sid") Integer sid);
    }

StudentoneMapper.xml




 
        
        
               
            
            
        
    
    
        select * from t_student where sid = #{sid}
    
    

ClatwoMapper.java

package com.example.mybatis;

import org.apache.ibatis.annotations.Param;

public interface ClatwoMapper {
    Cla querytwo(@Param("cid") Integer cid);
    }

ClatwoMapper.xml



    
    

test.java

    @Test
    public void mapquery() throws IOException {
        InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
        SqlSession sqlSession = sqlSessionFactoryBuilder.build(is).openSession(true);
        StudentoneMapper mapper = sqlSession.getMapper(StudentoneMapper.class);
        Student queryone = mapper.queryone(1);
        System.out.println(queryone.getName());

    }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/926834.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号