如何用mybatis实现多对多
来源:互联网 发布:大数据面试题 编辑:程序博客网 时间:2024/06/16 14:08
首先用户和角色的关系就是多对多
实体类中对应多个角色
中间表 中写角色的实体类
mapper中依次与上述对象对应
<resultMap type="sy.model.User" id="ResultMap3" extends="BaseResultMap">
<!-- user对应多个中间表记录,所以用 -->
<collection property="userRole" javaType="list" ofType="sy.model.UserRole">
<id property="id" column="userrole_id"/>
<result property="roleId" column="role_id"/>
<result property="userId" column="user_id"/>
中间表中对应role的实体类
<association property="role" javaType="sy.model.Role" >
<id property="id" column="role_id"/>
<result property="text" column="role_text"/>
</association>
</collection>
</resultMap>
<select id="getAll3" resultMap="ResultMap3">
SELECT
tuser.ID,
tuser.CREATEDATETIME,
tuser.MODIFYDATETIME,
tuser.`NAME`,
tuser.PWD,
tuser.CREATE_TIME,
tuser.UPDATE_TIME,
tuser_trole.ID userrole_id,
tuser_trole.ROLE_ID role_id,
tuser_trole.USER_ID user_id,
trole.ID role_id,
trole.TEXT role_text
FROM
tuser
JOIN tuser_trole ON tuser.ID = tuser_trole.USER_ID
JOIN trole ON tuser_trole.ROLE_ID = trole.ID
</select>
这样就是多对多了
- 如何用mybatis实现多对多
- 如何用c语言实现多态
- 如何用Mybatis逆向工程实现分页查询
- 如何用DataGrid实现类似DataList多列的效果
- 如何用算法实现多国语言的自动识别功能?
- 举例说明如何用PendingIntent来实现控制多个闹钟
- 如何用C语言实现类似C++中的多态
- 如何用c#实现对中文的md5加密
- C#如何用GDI+实现对图形的多边形输出
- 实现mybatis多对多功能
- 如何用VC++控制多光驱
- 如何用getElementById选择多个标签?
- 如何用svm进行多分类
- 如何用tomcat部署多个应用
- 如何用gdb调试多进程
- 如何用wamp管理多个网站
- 如何用DataGrid实现分页?
- 如何用peercast实现转播
- xmlbeandefinitionreader defaultlistablebeanfactory (beanfactory 已被弃用)
- Windows上安装nodejs版本管理器nvm
- Java的HttpURLConnection通过POST请求中文乱码
- MonoDevelop编译
- String:521. Longest Uncommon Subsequence I
- 如何用mybatis实现多对多
- Mac读取ntfs格式磁盘的办法 简单粗暴
- 如何创建一个类只能在堆(栈)上建立对象
- JS-实现类似于高考倒计时的倒计时时差
- 实习日记(第二周)
- 图解Java多线程设计模式
- 专访阿里云异构计算负责人:异构计算,GPU、FPGA、ASIC芯片将三分天下
- 第七次面试
- GD库 生成缩略图、文字水印、图片水印的函数封装