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)

相关推荐

  • Oracle数据库的内存结构是什么

    技术Oracle数据库的内存结构是什么这篇文章主要介绍“Oracle数据库的内存结构是什么”,在日常操作中,相信很多人在Oracle数据库的内存结构是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望

    攻略 2021年11月4日
  • 无停顿的GC算法翻译

    技术无停顿的GC算法翻译 无停顿的GC算法翻译无停顿的GC算法
    ? ·································译者:黄俊
    摘要
    现在对于响应时间敏感的应用受限

    礼包 2021年11月4日
  • Suse11.4 + DB2 10.5fp8 pureScale如何安装部署

    技术Suse11.4 + DB2 10.5fp8 pureScale如何安装部署这篇文章主要为大家展示了“Suse11.4 + DB2 10.5fp8 pureScale如何安装部署”,内容简而易懂,条理清晰,希望能够帮

    攻略 2021年12月4日
  • 数据挖掘

    技术数据挖掘 数据挖掘通过数据挖掘过程所推倒出的关系和摘要经常被称为:(A B)A. 模型B. 模式C. 模范D. 模具寻找数据集中的关系是为了寻找精确、方便并且有价值地总结了数据的某一特征的表示,这个

    礼包 2021年11月18日
  • nh4电子式,电子式要怎么写,和离子式的区别?

    技术nh4电子式,电子式要怎么写,和离子式的区别?电子式一般针对单个的分子或原子出题,让你写出他们的电子式,即各自外部电子的分布或排布情况nh4电子式。离子式一般用在写离子方程式上,离子即物质溶于水后所形成的粒子,比如说

    生活 2021年10月20日
  • java中基于线层池Spring-quartz如何实现动态增删除改和暂停恢复定时任务

    技术java中基于线层池Spring-quartz如何实现动态增删除改和暂停恢复定时任务这篇文章主要讲解了“java中基于线层池Spring-quartz如何实现动态增删除改和暂停恢复定时任务”,文中的讲解内容简单清晰,

    攻略 2021年11月15日