Mybatis中mapper配置文件的resultMap标签中的子元素id、result、association、collection、discriminator的用法 | 您所在的位置:网站首页 › id是干啥的 › Mybatis中mapper配置文件的resultMap标签中的子元素id、result、association、collection、discriminator的用法 |
关于resultMap标签相信大家都是很常用到的,但是如果是对于有相应单独实体类的就没有必要再新建这个标签了,下面是对resultMap下面的标签的用法及解释。 1.idid的用法对应的是表中的主键字段和实体类中相应属性的关系,property对应的是实体类的属性,column对应的是数据库表的字段; 2.resultresult的用法是指表中其他键值和实体类中字段的对应关系; 3.associationassociation 是将复杂类型的结果封装成其他实体类赋值给当前实体类的属性,当前实体的属性和select的返回值是同一类型的。 select * from unifieduser where id =#{id} 4.collectioncollection是将更复杂的类型包装之后复制给当前实体类的属性,其中ofType是指返回值中的集合的对象实体为Role,javaType是指当前实体类属性为ArrayList集合,select用法和association一样 对应实体User public class User implements Serializable { private Long id; private String username; private String email; private String sex; private List roles; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public List getRoles() { return roles; } public void setRoles(List roles) { this.roles = roles; } 5.discriminatordiscriminator其实优点类似switch语句,就是将discriminator 里面的column属性进行区分,当case相应值时执行case内部操作,javaType为column中键值对应实体属性的类型为String 以上就是在下的学习心得,如有不妥之处,帮忙指出下,谢谢! |
CopyRight 2018-2019 实验室设备网 版权所有 |