java mybatis框架实现多表关系查询功能

基于Maven框架的整体设计 —— 一多一的关系

java mybatis框架实现多表关系查询功能_第1张图片

思路:导入mybatis、mysql、Junit4.13依赖;

编写两个java实体类;

编写sqMapConfig.xml mybatis核心配置文件

编写dao层接口;

编写mapper 映射文件;

编写测试类。

1.导入相关依赖



    
    
        org.mybatis
        mybatis
        3.5.2
    

    
    
        mysql
        mysql-connector-java
        5.1.47
    

    
    
        junit
        junit
        4.13
    

2.编写两个java实体类;

Students

package com.mybatis.pojo;


public class Students {

    private Integer sid;
    private String sName;
    private Integer sCid;
    private Cards cards;   //  一多一的关系


    public Integer getSid() {
        return sid;
    }

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

    public String getsName() {
        return sName;
    }

    public void setsName(String sName) {
        this.sName = sName;
    }

    public Integer getsCid() {
        return sCid;
    }

    public void setsCid(Integer sCid) {
        this.sCid = sCid;
    }

    public Cards getCards() {
        return cards;
    }

    public void setCards(Cards cards) {
        this.cards = cards;
    }

    @Override
    public String toString() {
        return "Students{" +
                "sid=" + sid +
                ", sName='" + sName + '\'' +
                ", sCid=" + sCid +
                ", cards=" + cards +
                '}';
    }
}

Cards

package com.mybatis.pojo;

public class Cards {

    private Integer cid;
    private String cnum;

    public Integer getCid() {
        return cid;
    }

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

    public String getCnum() {
        return cnum;
    }

    public void setCnum(String cnum) {
        this.cnum = cnum;
    }

    @Override
    public String toString() {
        return "Cards{" +
                "cid=" + cid +
                ", cnum='" + cnum + '\'' +
                '}';
    }
}

3.编写sqMapConfig.xml mybatis核心配置文件





    
    

    
    
        
        
    

    
    
        
            
            
                
                
                
                
            
        
    

    
    
        
        
        
    

4.编写dao层接口;

package com.mybatis.dao;

import com.mybatis.pojo.Students;

import java.util.List;

public interface StudentsDao {

    // 查询学生信息以及对应的身份证信息
    public List findAll();
}

还有一个略了;

5.编写mapper 映射文件;

StudentsDao.xml






    
    
        
        
        
        
    

    
    

CardsDao.xml





    
    
        
        
        
    

6.编写测试类

import com.mybatis.dao.StudentsDao;
import com.mybatis.pojo.Students;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class TestMybatis {

    InputStream resource;
    SqlSession session;
    StudentsDao stuDao;
    @Before  // 在test方法之前执行
    public void init() throws IOException {

        // 加载核心配置文件
        resource = Resources.getResourceAsStream("sqMapConfig.xml");
        // 创建sqlSessionFactoryBuilder对象
        SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
        // 创建sqlSessionFactory对象
        SqlSessionFactory build = builder.build(resource);
        // 创建Session对象
        session = build.openSession();
        // 执行方法
        stuDao = session.getMapper(StudentsDao.class);

    }
    @After // 在test方法之后执行
    public void close() throws IOException {
        // 关闭资源
        session.close();
        resource.close();
    }

    @Test
    public void test01(){
        List list = stuDao.findAll();
        for (Students students : list) {
            System.out.println(students);
        }

    }
}

到此这篇关于java mybatis框架实现多表关系查询的文章就介绍到这了,更多相关java mybatis多表关系查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的