0
点赞
收藏
分享

微信扫一扫

javatype与oftype的区别


JavaType和ofType都是用来指定对象类型的,但是JavaType是用来指定pojo中对象属性的类型,而ofType指定的是映射到list集合属性中泛型的类型

xml文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.fpy.rbac.mapper.RbacMapper" >
<resultMap id="rmap" type="users">
<id property="username" column="username"/>
<result property="userpwd" column="userpwd"/>
<!--配置关联对象-->
<association property="roles" javaType="roles">
<id property="roleid" column="roleid"/>
<result property="rolename" column="rolename"/>
</association>
<!-- 配置关联集合对象menus-->
<collection property="menus" ofType="menus">
<id property="menuid" column="menuid"/>
<result property="menuname" column="menuname"/>
<result property="menuurl" column="menuurl"/>
<result property="fatherid" column="fatherid"/>
</collection>
<!-- 配置关联对象Funs -->
<collection property="funs" ofType="Funs">
<id property="funid" column="funid"/>
<result property="funname" column="funname"/>
<result property="funurl" column="funurl"/>
</collection>

</resultMap>

<select id="selectUserByName" parameterType="string" resultMap="rmap">
select
*
from
users u,
roles r,
roles_menus rm,
menus m left join funs f on m.menuid=f.menu_id
where
u.role_id = r.roleid
and r.roleid = rm.roles_id
and rm.menus_id = m.menuid
and u.username=#{username}
</select>
</mapper>

实体类:

package com.fpy.rbac.pojo;

import java.util.ArrayList;
import java.util.List;

public class Users {
private String username;
private String userpwd;
private Roles roles;
private List<Menus> menus = new ArrayList<Menus>();
private List<Funs> funs = new ArrayList<>();
public List<Funs> getFuns() {
return funs;
}
public void setFuns(List<Funs> funs) {
this.funs = funs;
}
public List<Menus> getMenus() {
return menus;
}
public void setMenus(List<Menus> menus) {
this.menus = menus;
}
public Roles getRoles() {
return roles;
}
public void setRoles(Roles roles) {
this.roles = roles;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpwd() {
return userpwd;
}
public void setUserpwd(String userpwd) {
this.userpwd = userpwd;
}

@Override
public String toString() {
return "Users{" +
"username='" + username + '\'' +
", userpwd='" + userpwd + '\'' +
", roles=" + roles +
", menus=" + menus +
", funs=" + funs +
'}';
}
}

 

举报

相关推荐

0 条评论