第四节 基于xml实现关联映射

本文介绍了如何在Java开发中,基于XML实现关联映射,包括创建POJO类,如Student、School和SchStudent,定义Mapper接口和XML配置文件,以及进行测试案例的展示。
摘要由CSDN通过智能技术生成

基于Mapper接口的开发规范

1、  mapper接口的全限定名要和mapper映射文件的namespace的值相同。

2、  mapper接口的方法名称要和mapper映射文件中的statement的id相同;

3、  mapper接口的方法参数只能有一个,且类型要和mapper映射文件中statement的parameterType的值保持一致。

4、  mapper接口的返回值类型要和mapper映射文件中statement的resultType值或resultMap中的type值保持一致;
5、  mapper.xml命名遵守(接口名+Mapper.xml)  CourseMapper.java与CourseMapper.xml

resultType

新建一个pojo存放查询信息

resultMap

在已存在的类中添加关联信息

基于xml关联映射的实例

pojo层
1. Student.java

package cn.edu.scnu.association.xml.po;

public class Student {
   
    private Integer id;
    private String name;
    private Integer age;
    private Integer sch_id;


    //resultMap添加关联信息
    private School school;

    public School getSchool() {
        return school;
    }

    public void setSchool(School school) {
        this.school = school;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    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 Integer getSch_id() {
        return sch_id;
    }

    public void setSch_id(Integer sch_id) {
        this.sch_id = sch_id;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", sch_id=" + sch_id +
                ", school=" + school +
                '}';
    }
}
  1. School.java
package cn.edu.scnu.association.xml.po;

import java.util.List;

public class School {
   
    private Integer id;
    private String name;

    private List<Student> students;

    public List<Student> getStudents() {
        return students;
    }

    public void setStudents(List<Student> students) {
        this.students = students;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值