- 前言
- 一、``是什么?
- 二、准备工作
- 1.创建pojo
- 2.Controller
- 3.Service
- 4.dao
- 三. xml
- 需要注意的点
前言
之前一直都是拿来主义,直接用逆向工程生成sqlxml,昨天浅浅研究了一下
一、
Student:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student {
private Integer id;
private String name;
private Integer age;
private Integer teacherId;
}
Teacher:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Teacher {
private Integer id;
private String name;
private Integer age;
private List students;
}
2.Controller
代码如下(示例):
@RestController
@RequestMapping("teacher")
@Slf4j
public class TeacherController {
@Autowired
private TeacherService teacherService;
@GetMapping("teacherList")
public ResultBean teacherList(){
List allTeacher = teacherService.getAllTeacher();
return ResultBean.ok(allTeacher);
}
@GetMapping("teacherWithStudent")
public ResultBean teacherWithStudent(){
List allTeacher = teacherService.getTeacherWithStudent();
return ResultBean.ok(allTeacher);
}
}
3.Service
public interface TeacherService {
List getAllTeacher();
List getTeacherWithStudent();
}
4.dao
public interface TeacherDao {
List getAllTeacher();
List getTeacherWithStudent();
}
三. xml
select * from teacher
需要注意的点
标签用来一对多 标签用来一对一 - column 一定要对应自己sql中查询出来的字段 如果没有as起别名,就和数据库中字段名保持一致.如果用as起别名了 一定要对应自己起的别名
标签中 表示的一对多中的多 ,column 属性的名称 一定不要和一对多中的一中的column 相同,否则查询出来的多会被覆盖成一



