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)

相关推荐

  • 为什么企业出海需要选择美国服务器

    技术为什么企业出海需要选择美国服务器由于现在租用海外建站的用户有不少,主流的主要有香港服务器、美国服务器、台湾服务器等,在这篇文章中,我将讨论什么是租用美国服务器以及您为什么需要它。什么是租用美国服务器? 租用美国服务器

    礼包 2021年12月8日
  • python中什么是aiohttp库

    技术python中什么是aiohttp库这篇文章主要讲解了“python中什么是aiohttp库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python中什么是aioh

    攻略 2021年10月20日
  • TypeScript联合类型,交叉类型和类型保护怎么理解

    技术TypeScript联合类型,交叉类型和类型保护怎么理解本篇内容介绍了“TypeScript联合类型,交叉类型和类型保护怎么理解”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学

    攻略 2021年12月10日
  • golang 占位符%d %t %v

    技术golang 占位符%d %t %v golang 占位符%d %t %v1、首先需要了解哪些占位符分别代表什么
    这些是死知识,把常用的记住,不常用的直接查表就行了
    golang 的fmt 包实现了

    礼包 2021年11月30日
  • JDK源码阅读(7):ConcurrentHashMap类阅读笔记

    技术JDK源码阅读(7):ConcurrentHashMap类阅读笔记 JDK源码阅读(7):ConcurrentHashMap类阅读笔记JDK源码阅读(7):ConcurrentHashMap类阅读笔

    礼包 2021年11月25日
  • 拮据怎么读,请问“盥”怎么读

    技术拮据怎么读,请问“盥”怎么读一、盥的读音:guàn二、汉字释义:1、物体的周围部分,外缘拮据怎么读。 2、国家或地区交界处。 3、几何学上指夹成角或围成多角形的直线。 4、旁侧,近旁。 5、方面。 6、表示方位。 7

    生活 2021年10月21日