摘要:本次的编程语言学习实例,有两张表,老师表teacher和班级表class,一个class班级对应一个teacher,一个teacher对应一个class,需求是根据班级id查询班级信息(带老师的信息),希望对大家学习编程语言有所帮助。
本次的编程语言学习实例,有两张表,老师表teacher和班级表class,一个class班级对应一个teacher,一个teacher对应一个class,需求是根据班级id查询班级信息(带老师的信息),希望对大家学习编程语言有所帮助。
创建teacher和class表:
CREATE TABLE teacher (
t_id INT PRIMARY KEY AUTO_INCREMENT,
t_name VARCHAR(20)
);
CREATE TABLE class (
c_id INT PRIMARY KEY AUTO_INCREMENT,
c_name VARCHAR(20),
teacher_id INT
);
ALTER TABLE class ADD CONSTRAINT fk_teacher_id FOREIGN KEY (teacher_id) REFERENCES
teacher(t_id);
INSERT INTO teacher(t_name) VALUES('LS1');
INSERT INTO teacher(t_name) VALUES('LS2');
INSERT INTO class(c_name, teacher_id) VALUES('bj_a', 1);
INSERT INTO class(c_name, teacher_id) VALUES('bj_b', 2);
首先定义实体类
老师Teacher类
package mybatis.bean;
public class Teacher {
private int id;
private String name;
public Teacher() {
}
public Teacher(int id, String name) {
super();
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Teacher [id=" + id + ", name=" + name + "]";
}
}
班级Class类
package mybatis.bean;
public class Class {
private int id;
private String name;
private Teacher teacher;
public Class() {
}
public Class(int id, String name, Teacher teacher) {
super();
this.id = id;
this.name = name;
this.teacher = teacher;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Teacher getTeacher() {
return teacher;
}
public void setTeacher(Teacher teacher) {
this.teacher = teacher;
}
@Override
public String toString() {
return "Class [id=" + id + ", name=" + name + ", teacher=" + teacher + "]";
}
}
要实现一对一关联查询
SELECT * FROM class c, teacher t WHERE c.teacher_id = t.t_id AND c.c_id = 1;
classMapper.xml文件如下:
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"//mybatis.org/dtd/mybatis-3-mapper.dtd">
select * from class c, teacher t where c.teacher_id=t.t_id and c.c_id=#{id}
查询过程如下:
mybatis.bean.Class clazz = session.selectOne("mybatis.test5.classMapper.getClass", 1);
System.out.println(clazz);
控制台输出结果为:
Class [id=1, name=bj_a, teacher=Teacher [id=1, name=LS1]]
希望这篇文章可以帮助到你,总之同学们,IT资讯尽在职坐标。
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号