三土土三

导航

mybatis中一对多,多对一级联问题。

## ResultMap:作用

1.解决数据库字段和java实体类属性不一致的问题。

数据库中字段命名通常采用下划线,如user_name,而在编写java程序时通常采用驼峰命名法,如userName,当我们从数据库中查到某个字段,但需要映射成为一个对象时,倘若字段名与实体属性不一致,必然会出现错误,这是我们就需要使用resultMap来解决。

2.多对一级联

假若有学生表student,其属性为 id,name,tid,tid为对应老师所属的id,老师表teacher,属性为id,name,学生与老师直接之间的关系为多对一,多个学生拥有一名老师,在这种情况下,对于实体类的编写,则为:

 

倘如我们想要查询所有的学生以及对应的老师信息,则需要使用ResultMap。

3.一对多级联

与上例雷同,但是我们在学生类中将学生的属性做一修改,为id,name,tid,tid为对应老师所属的id,老师类中id,name,List<Student> students,一个老师拥有多名学生。

 

我们给定一个老师的id,查询老师的信息,包括所属学生的信息,在查询之后,我们需要将所查询到的字段映射为一个对象。

总结:从数据库中查询到的字段需要映射为对象,我们可以根据不同的返回值确定标签的使用。

 

posted on 2021-03-26 15:03  弓长三土  阅读(67)  评论(0编辑  收藏  举报