博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用MyBatis的resultMap高级查询时常用的方式总结
阅读量:7047 次
发布时间:2019-06-28

本文共 1561 字,大约阅读时间需要 5 分钟。

以下内容已经通过楼主测试, 从pd设计数据库到测试完成, 之前楼主也没有过Mybatis 使用resultMap觉得有点乱,最近抽出时间总结了一下也算对MyBatis的resultMap进行一次系统的学习, 希望与大家分享学习心得, 有说的不对的地方请大家帮指教

下面是PD设计的几张数据库模型

先说下表吧 多对多 采用 传统而经典的 用户角色表,并没有采用当今流行的联合主键方式 而是将 用户表_id 和 角色表_id 进行Unique

详情参见

,   单项一对多采用 班级学生表 (一个班级有多个学生, 一个学生只能在一个班级, 大学除外否则就是多对多了, 哈哈)

Mybatis的resultMap操作多表的方式 大致如下几种方式

  方式一: 在resultMap中指定其他表的列名用column指向其他表的column同时在当前表对应的实体类中添加一个标识字段

 

  
  

java

package entity;public class User {    private String id;    private String userName;    private String password;    //这个就是在标示字段, 数据库中并不存在, 而是通过 USER_ID 指向 USER_ROLE的USER_ID列    private String flag;        public String getFlag() {
        return flag;     }     public void setFlag(String flag) {
        this.flag = flag;     } public String getId() { return id; } public void setId(String id) { this.id = id == null ? null : id.trim(); } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName == null ? null : userName.trim(); } public String getPassword() { return password; } public void setPassword(String password) { this.password = password == null ? null : password.trim(); }}

方式二:

 

转载于:https://www.cnblogs.com/YingYue/p/3984259.html

你可能感兴趣的文章
【Python与机器学习】:利用Keras进行多类分类
查看>>
quartz的job中注入spring对象!
查看>>
断路器越级跳闸故障原因
查看>>
hdu 3394 Railway
查看>>
homework-10
查看>>
根据python上下文管理,写一个在读文件内容前后自动打开关闭文件的程序
查看>>
android activity声明周期学习笔记
查看>>
继承与派生, 继承的应用
查看>>
RHEL6.5安装redis
查看>>
2.启动tomcat服务器错
查看>>
hadoop eclipse开发时报错
查看>>
多路访问网络中的挑战
查看>>
k8s数据管理(八)--技术流ken
查看>>
深拷贝&浅拷贝
查看>>
python 错误、调试和测试
查看>>
用Python和py2app写独立的Mac OS X 应用
查看>>
java获取本月第一天和最后一天
查看>>
☆1076
查看>>
定位IO瓶颈的方法,iowait低,IO就没有到瓶颈?
查看>>
php实例源码之获取mysql表中所有行和列
查看>>