mybatis
文章平均质量分 77
一叶飘零_sweeeet
大家好,我是果酱(ken),公众号:“果酱桑” 。专注 Java 开发与云原生技术领域,持续分享技术实现方案、实战问题排查、干货心得及前沿动态。已入驻阿里云、稀土掘金、个人公众号等平台,博文同步更新~ 若有技术疑问、经验交流或方向指导,欢迎评论区探讨!以技术为桥,共赴成长之路,期待与你一起深耕技术、To be is to do !共同进步~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
QueryWrapper vs LambdaQueryWrapper 深度解析
本文深入对比了MyBatis-Plus中QueryWrapper和LambdaQueryWrapper的核心差异与实践应用。QueryWrapper通过字符串指定字段,灵活但缺乏类型安全;LambdaQueryWrapper利用Lambda表达式实现类型安全的查询构建,支持编译时检查,更适合大型项目。文章从语法差异、底层实现、性能比较到典型场景应用,全面剖析了两者的优缺点,并给出选型建议:优先使用LambdaQueryWrapper保证类型安全。原创 2025-10-24 11:19:15 · 1277 阅读 · 0 评论 -
MyBatis 大于等于、小于等于
MyBatis XML映射文件中处理特殊符号的两种方法:1) 使用转义字符&gt;=和&lt;=表示≥和≤;2) 使用CDATA块包裹SQL片段。两种方式都需要结合<if>标签进行非空判断,转义字符更常用。注解方式SQL可直接使用符号无需转义。原创 2025-09-25 14:15:34 · 1695 阅读 · 0 评论 -
深入浅出 MyBatis:解密 ORM 框架的核心工作原理与实战技巧
MyBatis作为Java主流ORM框架,采用半自动化设计理念,平衡了SQL灵活性与开发效率。本文深入剖析其核心机制:1. 架构组件:解析SqlSessionFactory、Executor等核心模块的协作关系;2. 执行流程:从配置初始化到SQL执行的全链路分析;3. 动态代理:揭秘Mapper接口无实现类的原理;4. 缓存体系:详解两级缓存的工作机制与优化策略;5. 动态SQL:展示条件分支、循环等灵活构建技巧;6. 插件扩展:介绍拦截器实现原理与常用插件。原创 2025-08-27 14:07:51 · 904 阅读 · 0 评论 -
mybatisplus 配置二级缓存
MyBatis-Plus二级缓存配置指南:包含基础配置和高级特性,支持本地和分布式(Redis)两种缓存方案。核心步骤:1)添加依赖;2)全局开启缓存;3)实体类实现序列化;4)Mapper配置缓存策略(XML或注解)。分布式环境推荐使用Redis缓存,可自定义JSON序列化优化性能。提供细粒度控制方法(禁用/刷新缓存)和验证测试方案,同时提醒注意BaseMapper方法缓存行为、分页查询和多表关联的特殊处理。合理配置可显著减少数据库访问,但需平衡缓存命中率与数据一致性。原创 2025-08-26 15:11:42 · 688 阅读 · 0 评论 -
在分布式环境下正确使用MyBatis二级缓存
本文探讨了MyBatis二级缓存在分布式环境下的应用挑战与解决方案。核心问题在于多节点独立缓存导致的数据不一致和缓存孤岛现象。通过采用Redis作为集中式缓存替代本地缓存,并配合序列化、自定义缓存键、主动失效等策略,实现了跨节点缓存一致性。文章详细介绍了MyBatis与Redis的集成配置、缓存优化技巧及适用场景,强调了对实时性要求高的数据应避免使用二级缓存。该方案有效平衡了性能与可靠性,为分布式系统提供了可行的缓存解决方案。原创 2025-08-26 14:21:42 · 1385 阅读 · 0 评论 -
如何避免MyBatis二级缓存中的脏读
摘要:MyBatis二级缓存脏读问题的解决方案需从多维度入手。关键措施包括:1)依赖自动缓存清空机制(默认flushCache=true);2)对实时性高的查询设置flushCache=true;3)细化缓存粒度(按表拆分Mapper或使用cache-ref);4)严格事务管理确保提交后刷新缓存;5)设置合理缓存过期时间;6)强一致性数据禁用二级缓存;7)分布式环境采用Redis等集中式缓存;8)必要时手动管理缓存。核心原则是保持缓存更新与数据库操作同步,平衡性能与数据一致性。原创 2025-08-26 13:36:06 · 632 阅读 · 0 评论 -
MyBatis一级缓存与二级缓存的性能密码与避坑指南
本文深入解析MyBatis的一级缓存和二级缓存机制。一级缓存是SqlSession级别的默认缓存,生命周期短,适合会话内重复查询;二级缓存是Mapper级别的共享缓存,需手动开启,适合跨会话高频查询。文章通过完整示例演示了两种缓存的命中、失效场景及配置方法,详细对比了它们的核心区别。同时总结了缓存使用的最佳实践:针对查询频繁但更新少的数据使用缓存,避免实时性要求高的场景;提出了保证缓存一致性的技巧,如设置合理过期时间、主动刷新缓存等。最后强调缓存仅是性能优化手段之一,需结合索引优化、SQL优化等综合施策。原创 2025-08-26 11:09:40 · 865 阅读 · 0 评论 -
别让 like 变成 “后门“!MyBatis 防 SQL 注入实战:5 种方案彻底筑牢数据安全防线
本文详细解析了在MyBatis中使用like语句时防止SQL注入的5种安全方案:1. 参数占位符+CONCAT函数:在SQL层面安全拼接模糊查询条件;2. Java手动拼接%符号:将处理逻辑前置到代码层;3. MyBatis bind标签:在XML中完成安全拼接;4. MyBatis-Plus QueryWrapper:利用框架提供的安全查询方法;5. 输入校验:基础防御措施。文章强调应优先使用参数绑定(#{})而非字符串拼接(${}),并建议采取"多层防御"策略,包括输入校验等。原创 2025-08-26 09:39:48 · 1028 阅读 · 0 评论 -
深度掌握 MyBatis-Plus 逻辑删除:从入门到精通的全方位指南
MyBatis-Plus逻辑删除功能解析与实战指南 本文详细介绍了MyBatis-Plus的逻辑删除功能。逻辑删除是一种通过标记数据而非物理删除的数据处理策略,具有数据可恢复、历史记录完整等优势。文章从基础配置入手,展示了如何在SpringBoot项目中集成MyBatis-Plus并实现逻辑删除功能,包括数据库表设计、实体类注解配置和全局设置。同时深入探讨了高级应用场景,如多字段逻辑删除、与乐观锁结合使用等。通过电商系统实战案例,演示了逻辑删除在用户、商品、订单等核心业务模块中的应用。最后总结了逻辑删除的优原创 2025-07-18 09:53:17 · 804 阅读 · 0 评论 -
Mybatis-Plus 3.5.12 分页拦截器消失?别急,一招解决!
Mybatis-Plus 3.5.12分页拦截器报错解决方案 摘要:Mybatis-Plus 3.5.12版本出现PaginationInnerInterceptor类缺失问题,原因是3.5.0版本后分页插件被拆分至mybatis-plus-extension模块。解决方法只需添加对应依赖即可。文章详细介绍了从配置拦截器到Controller调用的完整分页流程,包括常见问题排查方法,帮助开发者快速解决分页功能问题并正确使用Mybatis-Plus的分页特性。 (99字)原创 2025-07-16 09:38:56 · 3073 阅读 · 0 评论 -
MyBatis日期查询如何优雅地追加时间戳“23:59:59”
MyBatis日期查询如何优雅地追加时间戳“23:59:59”原创 2023-12-29 11:13:09 · 1617 阅读 · 1 评论 -
Spring Boot项目集成Mybatis-Plus
Spring Boot项目集成Mybatis-Plus原创 2023-12-20 18:18:16 · 1287 阅读 · 0 评论 -
MyBatisPlus与MyBatis的对比与联系
MyBatisPlus是一个强大的MyBatis增强工具,它继承了MyBatis的所有特性,同时还引入了一些新的特性,如自动填充、乐观锁插件、逻辑删除等。通过使用MyBatisPlus,开发人员可以大大减少手写SQL的工作量,提高开发效率。原创 2023-11-08 09:55:47 · 3750 阅读 · 0 评论 -
数据库乐观锁使用指南
关键词:乐观锁、悲观锁、数据库、并发、数据一致性、MyBatis Plus、Java、SQL原创 2023-08-18 16:23:11 · 961 阅读 · 0 评论 -
用mybatis批处理, 编程式事务,CompletableFuture异步处理,多线程,线程池,list 分页,实现多张表大批量插入
在实际的开发中,我们经常需要将大量的数据插入到数据库中。如果使用单条插入的方式,会导致数据库连接频繁的开启和关闭,从而导致程序性能低下。为了提高程序的性能,我们可以使用批处理的方式来插入数据。同时,我们还可以使用Java编程式事务、多线程、线程池、List分页等技术来实现多张表大批量插入的功能。本文将介绍如何使用Java编程式事务、多线程、线程池、List分页等技术实现多张表大批量插入的功能。本文介绍了如何使用Java编程式事务、多线程、线程池、List分页等技术实现多张表大批量插入的功能。原创 2023-05-31 16:44:15 · 6662 阅读 · 3 评论 -
mybatis <association> 标签的使用
mybatis 标签的使用原创 2023-05-25 11:39:54 · 11352 阅读 · 0 评论 -
Mybatis Plus 分页
Mybatis Plus 分页原创 2023-05-22 18:42:07 · 3347 阅读 · 0 评论 -
idea mybatis xml 文件报错 Connot resolve column 解决办法
https://blog.youkuaiyun.com/qq_29689343/article/details/99945550看了优快云所有大神的解答,尝试之后都无效,包含上面的Database Tools配置Manage Shown Schemas.最后发现是方言改成了Mysql ,改回null 即可!原创 2021-08-10 16:07:23 · 1365 阅读 · 1 评论 -
mybatis 批量新增 跟修改
<!--修改--> <update id="delStudentAttendanceBatch" parameterType="java.util.List"> <foreach collection="studentAttendanceList" item="item" index="index" open原创 2018-12-03 13:34:06 · 1349 阅读 · 0 评论 -
自己写过的一些比较常用的代码,mybatis
1.mybatis传List查询的情况 parameterType="java.util.List"> SELECT a.wares_id AS waresId,b.ware_batch_no AS batchNo, b.start_address AS startAddress ,b.action_date as actionDate原创 2016-10-31 11:34:15 · 706 阅读 · 0 评论 -
mybatis传List
1.mybatis传List查询的情况 parameterType="java.util.List"> SELECT a.wares_id AS waresId,b.ware_batch_no AS batchNo, b.start_address AS startAddress ,b.action_date as actionDate原创 2016-09-01 09:25:15 · 588 阅读 · 0 评论
分享