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

北京建设网站的公司企业网站源码

北京建设网站的公司,企业网站源码,婚纱影楼网站源码,大连排名推广💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
    • 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

    • 一.基本介绍
      • 1.什么是 MyBatis?
      • 2.MyBatis 特点?
    • 二.故障还原
      • 1.业务代码
      • 2.bug 现象
      • 3.打印执行 sql
    • 三.解决方案
      • 1.定位 bug
      • 2.问题分析
      • 3.解决方案

一.基本介绍

1.什么是 MyBatis?

MyBatis 是一个基于 Java 的持久层框架,它提供了面向 SQL 的数据访问层,使得在应用程序中能够更方便地管理和操作数据库。MyBatis 的目标是通过简化数据库访问的过程来提高开发人员的工作效率。

2.MyBatis 特点?

以下是 MyBatis 的一些关键特点和概念:

  1. SQL 映射文件: MyBatis 使用 XML 文件或注解来配置 SQL 语句和数据库映射。这些文件定义了 SQL 查询、更新、删除等操作,以及结果集与 Java 对象之间的映射关系。

  2. 面向 SQL 编程: MyBatis 允许开发人员直接编写原生 SQL 查询,也可以在 SQL 映射文件中使用动态 SQL。这使得开发人员可以更灵活地控制数据库操作。

  3. 对象关系映射(ORM): MyBatis 支持将数据库表的行映射为 Java 对象,简化了数据库操作时数据的转换过程。开发人员可以通过配置文件或注解来定义对象与数据库表之间的映射关系。

  4. 自动映射: MyBatis 提供了自动映射功能,可以自动将查询结果集映射到 Java 对象中,减少了手动编写映射代码的工作量。

  5. 事务管理: MyBatis 支持事务管理,开发人员可以通过配置文件或编程方式来管理事务,确保数据库操作的一致性和可靠性。

  6. 灵活性: MyBatis 不强制开发人员使用特定的模型或架构,允许开发人员按照自己的需求来组织代码和配置。

MyBatis 在 Java 开发中被广泛应用于持久层的开发,尤其在与关系型数据库交互的项目中。它的设计目标是简化数据库访问,并提供开发人员更多的控制权,使得数据库操作更加灵活和高效。

二.故障还原

1.业务代码

 List<ProductAllexinfoDTO> products = productAllexinfoMapper.totalList(totalListQuery);

2.bug 现象

List<ProductAllexinfoDTO> products = productAllexinfoMapper.totalList(totalListQuery);

这行代码未执行时,debug 看到 totalListQuery 中 name 的值是“李丽”,但是当这行代码执行完了之后 name 的值变为了“王五”,因为代码就这么一点点,那么问题一定是出在 totalList 方法里面

3.打印执行 sql

select * from xx_table where name ='王五'

这就很奇怪了,传入的是李丽,为啥 sql 的参数是王五呢?

三.解决方案

1.定位 bug

select * from xx_table
<choose><when test="query.name != null and query.name != '' and query.name = '王五' ">and region.name = #{query.name}</when><otherwise>and region.name = '六六'</otherwise>
</choose>

2.问题分析

看到这里,恍然大悟,之前确实没有遇到过这样的问题,最关键的是这样写 mybatis 居然认为是对的,没有报错

#把王五的值赋值给了name属性,导致sql的参数和后续的name都是王五
query.name = '王五'

3.解决方案

  • 首先=‘王五’这里,需要改为两个==,这里一定要记住,不能搞混了,一个等号 mybatis 是不报错的
  • 其次,在有字符串判断的时候,需要给外层加单引号,内层加双引号
select * from xx_table
<choose><when test='query.name != null and query.name != "" and query.name == "王五" '>and region.name = #{query.name}</when><otherwise>and region.name = '六六'</otherwise>
</choose>

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

http://www.dinnco.com/news/66832.html

相关文章:

  • 钦州做网站的公司企业高管培训课程有哪些
  • 专业提供网站制作百度首页广告
  • 网站制作乌鲁木齐注册网站查询
  • 怎么做网站图片的切换图谷歌推广技巧
  • 网站建设必须要服务器吗制作链接的app的软件
  • 自己做的网站如何制作后台杭州网络推广
  • 公司和网站备案查询密码网站注册步骤
  • 如何做类似优酷的视频网站外贸建站与推广
  • 最专业的网站建设组织四川seo
  • 外贸网络推广哪家靠谱seo关键词
  • jsp动态网站开发赵增敏竞价托管外包
  • 重庆网站开发谷歌浏览器下载手机版安卓官网
  • 网站开发搜索功能怎么实现seo快速排名服务
  • 网站开发加盟商怎么做模板网站建站公司
  • 阜阳网站开发招聘百度刷seo关键词排名
  • 网站如何做直播轮播百度人工服务热线24小时
  • 做网站要找什么软件免费s站推广网站
  • 景安搭建wordpress上海优化网站公司哪家好
  • 大厂网站建设营销活动推广方案
  • wordpress 文章版权 插件北京推广优化经理
  • 金融网站建设方案百度云搜索引擎入口网盘搜索神器
  • 东莞网站排名提升游戏网站交换友情链接
  • 大连网站设计室全球搜怎么样
  • 北京营销网站建设公司可以免费打开网站的软件下载
  • 做时时彩网站费用一站式海外推广平台
  • 广东知名网站视频号推广方法
  • 外国做营销方案的网站手机如何制作网站
  • 网站建设 网站开发营销推广的特点是
  • 数据库支持的网站怎么做今日军事头条新闻
  • 合法购物网站建设进入百度一下官网