随笔分类 -  MyBatis

摘要:一、概述 在MyBatis中通过拦截器实现SQL参数加密/结果集解密是数据安全的常见场景,核心是拦截参数处理环节(加密入参)和结果集处理环节(解密出参)。 适配Spring Boot3 + MyBatis环境。 核心思路 拦截点 作用 拦截接口 拦截方法 参数加密 执行SQL前加密敏感参数 Para 阅读全文
posted @ 2025-12-08 21:57 夏尔_717 阅读(46) 评论(0) 推荐(0)
摘要:一、概述 在Mybatis开发体系中,“过滤器”是开发者对Mybatis拦截器(Plugin)的通俗称呼,它是Mybatis提供的核心扩展机制——无需修改框架源码,就能对SQL执行全流程进行增强,比如分页插件、通用字段自动填充、数据加解密等功能,底层均依赖这一机制。本文将从底层技术原理、核心源码解析 阅读全文
posted @ 2025-12-08 21:18 夏尔_717 阅读(66) 评论(0) 推荐(0)
摘要:一、概述 在实际开发中,我们常常需要在不侵入业务代码的前提下,对SQL执行过程进行增强处理,比如SQL耗时统计、参数加密、结果集脱敏、数据权限过滤等场景。MyBatis提供的自定义拦截器(Plugin)机制,正是为这类需求而生。 MyBatis拦截器基于责任链模式和动态代理实现,允许开发者在SQL执 阅读全文
posted @ 2025-12-07 22:19 夏尔_717 阅读(84) 评论(0) 推荐(0)
摘要:一、简介 1.1 概述 MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。 MyBatisPlus官网:https://baomidou.com/ 1.2 特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影 阅读全文
posted @ 2025-07-08 19:47 夏尔_717 阅读(430) 评论(0) 推荐(0)
摘要:一、概述 MyBatis的强大特性之一便是它的动态SQL。如果有使用JDBC或其他类似框架的经验,就能体会到根据不同条件拼接SQL语句有多么痛苦。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。利用动态SQL这一特性可以彻底摆脱这种痛苦。 通常使用动态SQL不可能是独立的一部分, 阅读全文
posted @ 2025-06-29 16:07 夏尔_717 阅读(133) 评论(0) 推荐(0)
摘要:一、概述 MyBatis是常见的Java数据库访问层框架。在MyBatis中,缓存可以提高查询性能,因为它们可以避免频繁地向数据库发送查询。MyBatis提供了两种缓存机制:一级缓存和二级缓存。 一级缓存是在MyBatis的SqlSession级别上运作的。在同一个SqlSession中执行的查询会 阅读全文
posted @ 2022-09-22 18:18 夏尔_717 阅读(442) 评论(0) 推荐(0)
摘要:一、映射文件 MyBatis的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的XML文件就显得相对简单。如果拿它跟具有相同功能的JDBC代码进行对比,你会立即发现省掉了将近95%的代码。MyBatis就是针对SQL构建的,并且比普通的方法做的更好。 SQL映射文件有很少的几个顶 阅读全文
posted @ 2022-04-26 22:36 夏尔_717 阅读(604) 评论(0) 推荐(1)
摘要:一、概述 MyBatis是一个优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis几乎消除了JDBC代码和参数的手动设置以及结果集的检索。MyBatis使用简单的XML或注解进行配置,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象) 阅读全文
posted @ 2022-04-25 15:19 夏尔_717 阅读(339) 评论(0) 推荐(0)