手机网站的做,wordpress搜索引擎主题,wordpress前端个人中心,什么浏览器适合看网站2019独角兽企业重金招聘Python工程师标准 最近在练习时 遇到了类似于 企鹅里的好友分组功能#xff0c;使用的持久层框架是mybatis 第一次处理这种关系 记录一下 备忘。。 首先是表结构#xff1a; user_group 好友分组 、 t_group 用户与好友… 2019独角兽企业重金招聘Python工程师标准 最近在练习时 遇到了类似于 企鹅里的好友分组功能使用的持久层框架是mybatis 第一次处理这种关系 记录一下 备忘。。 首先是表结构 user_group 好友分组 、 t_group 用户与好友分组的关联表 、 t_user 用户表 实现需求的返回格式 之后就到了重点处理这种数据格式 重点在Mybatis的resultMap 和 对应的实体类 分组实体类 UserGroupsView public class UserGroupsView { /*** 好友分组ID*/Idprivate Integer id;/*** 好友分组名*/Column(name groupname )private String groupName;/*** 分组下好友集合*/private ListUserGroupView userGroupViewList;
} 分组下好友实体类UserGroupView public class UserGroupView {/*** 好友分组ID*/IdColumn(nameuser_group_id)private Integer userGroupId;/*** 好友ID*/Column(name friend_id)private Integer friendId;/*** 用户昵称*/private String username;/*** 在线状态 online在线、offline:离线、hide隐身*/private String status;/*** 用户签名*/private String sign;/*** 头像URL*/private String avatar;/*** 是否删除 0,(否)/1,(是)*/Column(name is_delete)private Integer isDelete;
} 在mybatis中的处理 这里的重点应该是 id为UserGroupsMap 中的返回集合类型上这个resultMap返回的集合 对应着UserGroupView实体类 所以返回到 分组实体类中 是一个集合。 ?xml version1.0 encodingUTF-8?
!DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.mapper.UserGroupMapperresultMap idBaseResultMap typecom.model.UserGroupid columnid jdbcTypeINTEGER propertyid/result columngroup_id jdbcTypeINTEGER propertygroupId/result columnfriend_id jdbcTypeINTEGER propertyfriendId//resultMapresultMap idUserGroupMap typecom.model.view.UserGroupViewid columnuser_group_id jdbcTypeINTEGER propertyuserGroupId/result columnfriend_id jdbcTypeINTEGER propertyfriendId/result columnusername jdbcTypeVARCHAR propertyusername/result columnstatus jdbcTypeVARCHAR propertystatus/result columnsign jdbcTypeVARCHAR propertysign/result columnavatar jdbcTypeVARCHAR propertyavatar/result columnis_delete jdbcTypeINTEGER propertyisDelete//resultMapresultMap idUserGroupsMap typecom.model.view.UserGroupsViewid columnid jdbcTypeINTEGER propertyid/result columngroupname jdbcTypeINTEGER propertygroupName/collection propertyuserGroupViewList resultMapUserGroupMap//resultMapselect idselectGroups resultMapUserGroupsMapSELECTt_group.id,t_group.groupname,user_group.id AS user_group_id,t_user.id AS friend_id,t_user.username,t_user.status,t_user.sign,t_user.avatarFROMuser_groupINNER JOIN t_user ON user_group.friend_id t_user.idINNER JOIN t_group ON t_group.id user_group.group_idWHERE!-- 这里暂时把userId写死--t_group.user_id 1/select/mapper 对应mapper的interface public interface UserGroupMapper extends MapperUserGroup {// 获取用户好友分类 及其分类下的好友ListUserGroupsView selectGroups();
} 执行sql语句的返回结果大概是这样 转载于:https://my.oschina.net/danjuan/blog/906437