当前位置: 首页 > news >正文

国内网站域名淮南人才网

国内网站域名,淮南人才网,wordpress vip会员系统,代做施组 方案的网站目录 一. 🦁 写在前面二. 🦁 探索过程2.1 开端 —— 开始写 bug2.2 发展 —— bug 完成2.3 高潮 —— bug探究2.4 结局 —— 效果展示 三. 🦁 写在最后 一. 🦁 写在前面 今天又是 BUG 气满满的一天,一个 xxxMapper.xm…

目录

  • 一. 🦁 写在前面
  • 二. 🦁 探索过程
    • 2.1 开端 —— 开始写 bug
    • 2.2 发展 —— bug 完成
    • 2.3 高潮 —— bug探究
    • 2.4 结局 —— 效果展示
  • 三. 🦁 写在最后

权限管理

一. 🦁 写在前面

今天又是 BUG 气满满的一天,一个 xxxMapper.xml 因主键id 重复而出现的 bug 献上!

二. 🦁 探索过程

2.1 开端 —— 开始写 bug

就在刚刚,🦁 在写项目的时候,在实现一个多表联查的功能时,遇到一个不可描述的 BUG,我写完SQL 测试完成才去项目配置相关映射的!SQL 如下:

SELECTa.id,a.username,r.id ,r.role_name,r.role_desc,p.id ,p.permission_name,p.url 
FROM`admin` aLEFT JOIN admin_role ON a.id = admin_role.aidLEFT JOIN `role` r ON admin_role.rid = r.idLEFT JOIN role_permission ON r.id = role_permission.ridLEFT JOIN permission p ON role_permission.pid = p.id 
WHEREa.id = 133622996

测试结果如下:

在这里插入图片描述
一点毛病没有!

2.2 发展 —— bug 完成

当我自信满满回到项目中,配置完相关代码后(因为时多表查询,所以需要配置一个 xxxMapper.xml 文件):

   <select id="findById" parameterType="long" resultMap="adminMapper">SELECT a.id,a.username,r.id ,r.role_name,r.role_desc,p.id ,p.permission_name,p.urlFROM `admin` aLEFT JOIN admin_roleON a.id = admin_role.aidLEFT JOIN `role` rON admin_role.rid = r.idLEFT JOIN role_permissionON r.id = role_permission.ridLEFT JOIN permission pON role_permission.pid = p.idWHERE a.id = #{aid}
</select>

adminMapper 配置如下:

<resultMap id="adminMapper" type="com.lion.online.pojo.Admin"><id property="id" column="id"></id><result property="username" column="username"></result><collection property="roles" column="id" ofType="com.lion.online.pojo.Role"><id property="id" column="id"></id><result property="roleName" column="role_name"></result><result property="roleDesc" column="role_desc"></result><collection property="permissions" column="id" ofType="com.lion.online.pojo.Permission"><id property="id" column="id"/><result property="permissionName" column="permission_name"></result><result property="url" column="url"></result></collection></collection>
</resultMap>

运行控制台结果和数据库查询的结果一样:

在这里插入图片描述
正当一切都是朝着正轨走的时候,页面运行的结果却长这样:
在这里插入图片描述
🦁 已经亚麻住了… … 想起了手机中的这个表情包:

在这里插入图片描述

2.3 高潮 —— bug探究

出现这个结果始料不及,于是去搜了一下,发现也有很多 冤大头 出现了和我一样的错误,终于知道问题出现在哪里!
原因是在构造返回类型的时候使用了 ResultMap 标签,但是由于我的数据库表主键名字都是 id,所以在 ResultMap 中出现了多个同样的 id 字段,导致分表的 id 值和主表一样(简单来说就是Mybatis在查询时,对这几个都长得一样的id 混乱了!)。知道了问题,我们就可以着手解决了:

  • 配置 collection 一对多关联的话需要改 column 别名,否则查询出来条数不对!
  • 在 ResultMap 中,property 属性对应实体类中的属性,而 column 属性严格来说对应结果集中的列名,而不是数据库中的列名。
    • 例如,如果对列起了别名,那么 column 属性对应的就是别名,而不是原来的列名

改动如下:

  • resultMap 修改 column 列名:
    在这里插入图片描述
  • 代码使用别名
    在这里插入图片描述

2.4 结局 —— 效果展示

在这里插入图片描述

三. 🦁 写在最后

一个 BUG 赠给屏幕前的你!望君喜欢。


在这里插入图片描述

🦁 其它优质专栏推荐 🦁

🌟《Java核心系列(修炼内功,无上心法)》: 主要是JDK源码的核心讲解,几乎每篇文章都过万字,让你详细掌握每一个知识点!

🌟 《springBoot 源码剥析核心系列》:一些场景的Springboot源码剥析以及常用Springboot相关知识点解读

欢迎加入狮子的社区:『Lion-编程进阶之路』,日常收录优质好文

更多文章可持续关注上方🦁的博客,2023咱们顶峰相见!

http://www.yayakq.cn/news/845521/

相关文章:

  • 做一名网络写手去那个网站好58黄页
  • 临沂企业自助建站建站工具免费
  • 检察院内部网站升级建设曲沃网站开发
  • 如何优化网站tkd企业微信开发者工具
  • 企业网站建设 全包psd 网站
  • 沧州地区做网站2W网站建设的作用
  • 怎么给网站添加关键字现在的网站推广是怎么做的
  • 可以做调查问卷的网站6万左右装修三室两厅
  • 怎么提高网站的权重帝国cms 商城网站视频教程
  • 汕头网站建设设计赣州人才网官网招聘信息
  • 网站内容建设平面设计wordpress 缓存文件
  • 网上商城网站制作河北省建设项目信息网站
  • 网站开发 学习步骤临漳网站建站
  • 重庆做蔬菜配送的网站有哪些简单的手机网页制作
  • 新网站 不稳定泉州平台网站建设
  • 贵州省城乡建设厅网站材料价北京门户网站制作费用
  • cms仿站网站如何做静态化
  • 漆包线 东莞网站建设wordpress 表格小工具栏
  • 哪个网站开发软件php网站开发外文文献
  • 做网站的图片=gif搬瓦工vps wordpress
  • 成都网站工作室建设银行北京招聘网站
  • 惠州网站制作费用制作公司网页的步骤
  • 企业网站建设销售话术sem推广软件
  • 网站页面设计基础教程vs2012网站开发
  • 古典风格网站模板wordpress 分享 微信
  • 产品包装设计网站qml 网站开发
  • 贵州建筑网站iis7.5 网站配置
  • 网站 前台后台网站建设也笔试
  • 网站关键词排名下降h5免费制作平台企业秀
  • 手机网站建设的整体流程图wordpress server error