mybatis-多对多查询

技术mybatis-多对多查询 mybatis-多对多查询用户表和角色表的关系为,一个用户有多个角色,一个角色被多个用户使用多对多查询的需求:查询用户同时查询出该用户的所有角色对应的sql语句: SEL

mybatis-多对多查询

用户表和角色表的关系为,一个用户有多个角色,一个角色被多个用户使用多对多查询的需求:查询用户同时查询出该用户的所有角色

对应的结构化查询语言语句:SELECT * FROM USER u,sys_user_role ur,sys_role r WHERE u.id=ur.userId和ur.roleId=r.id

查询的结果:

1)创建Role实体,修改User实体

公共类用户{

私有int id

私有字符串用户名;

私有字符串密码;

私人约会生日;

//代表当前用户具备哪些角色

私人列表角色列表;

}

公共类角色{

私有int id

私有字符串角色名

}

2) 添加UserMapper接口方法

列表用户findaluserandolle();

3)配置UserMapper.xml

!-类型=“用户”用户为核心配置文件设置的类的别名-

结果映射类型="用户"

!-用户的信息-

身份证明(identification)列='userId '属性='id'/id

结果列='用户名'属性='用户名'/结果

结果列='密码'属性='密码'/结果

结果列='生日'属性='生日'/结果

!-用户内部的角色列表信息-

!- ofType='角色'角色为核心配置文件设置的类的别名-

集合属性='roleList' ofType='role '

身份证明(identification)列='roleId '属性='id'/id

结果列='roleName '属性=' roleName '/结果

结果列='roleDesc '属性=' RoleDesc '/结果

/收藏

/resultMap

选择结果映射='用户角色映射'

选择*来自用户,系统用户角色,系统角色其中u.id=ur.userId和ur.roleId=r.id

/select

4)测试结果

@测试

public void test3()引发IOException {

InputStream资源assstream=resources。get resource as stream(' sqlmapconfig。XML ');

Sqlsessionfactory Sqlsessionfactory=new Sqlsessionfactory builder().构建(资源流);

SqL会话SqL会话=SqL会话工厂。OpenSession();

用户映射程序=SqL会话。GetMapper(用户映射器。类);

列表用户usernandleall=mapper。findsusernandall();

适用于(用户用户:用户和实验室){ 0

System.out.println(用户);

}

sqlsesession。close();

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/149514.html

(0)

相关推荐

  • 如何理解docker

    技术如何理解docker这篇文章给大家介绍如何理解docker,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 随着用户的需求越来越多样,系统的规模越来越庞大,运行的软件越来越复杂,环境配置问题

    攻略 2021年10月20日
  • arcsinx的不定积分,sinx的反函数的平方积分

    技术arcsinx的不定积分,sinx的反函数的平方积分sinx的反函数为arcsinx的不定积分:y=arcsinx或siny=x(x∈[-1,1])。arcsinx的平方的不定积分,写作:∫ arcsin²x dx分

    生活 2021年10月30日
  • pads无模命令怎么用

    技术pads无模命令怎么用这篇文章将为大家详细讲解有关pads无模命令怎么用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。全局设置(Global Settings)C……

    攻略 2021年11月11日
  • 删除排序数组中的重复项 ----java

    技术删除排序数组中的重复项 ----java 删除排序数组中的重复项 ----java给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。

    礼包 2021年11月4日
  • 鲁班出装,s23鲁班最强出装和铭文

    技术鲁班出装,s23鲁班最强出装和铭文铭文搭配鲁班出装:鹰眼*10 夺萃*5+狩猎*5 无双*3+祸源*7
    出装:
    鉴于鲁班自带招仇恨的体质,建议大家第一件先做抵抗鞋。鲁班需要尽早地做出电刀,因为鲁班的被动扫射速度是和攻

    生活 2021年10月24日
  • 刷抖音播放量,抖音在线刷播放量网址?

    技术刷抖音播放量,抖音在线刷播放量网址?抖音快车这个引流渠道目前是见效快的办法,目前抖音HOT热门位子很火,流量相比位的三分之一获取得到,所以各大商家纷纷竞争目前HOT位子是根据点击率+ROI进行评估的。做引流先做快车,

    测评 2021年10月26日