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

浅谈mybatis中<resultMap>的使用

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

浅谈mybatis中<resultMap>的使用

文章目录
  • 前言
  • 一、``是什么?
  • 二、准备工作
    • 1.创建pojo
    • 2.Controller
    • 3.Service
    • 4.dao
  • 三. xml
  • 需要注意的点


前言

之前一直都是拿来主义,直接用逆向工程生成sqlxml,昨天浅浅研究了一下 的使用。


一、是什么?

元素是 MyBatis 中最重要最强大的元素。它可以让你从 90% 的 JDBC ResultSets 数据提取代码中解放出来, 并在一些情形下允许你做一些 JDBC 不支持的事情。 实际上,在对复杂语句进行联合映射的时候,它很可能可以代替数千行的同等功能的代码。 ResultMap 的设计思想是,简单的语句不需要明确的结果映射,而复杂一点的语句只需要描述它们的关系就行了。

二、准备工作 1.创建pojo

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
    

    


需要注意的点
  1. 标签用来一对多 标签用来一对一
  2. column 一定要对应自己sql中查询出来的字段 如果没有as起别名,就和数据库中字段名保持一致.如果用as起别名了 一定要对应自己起的别名
  3. 标签中 表示的一对多中的多 ,column 属性的名称 一定不要和一对多中的一中的column 相同,否则查询出来的多会被覆盖成一
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/831853.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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