- nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error updating database. Cause: java.lang.NullPointerException ### The error may involve com.hzgroup.switchpr... nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error updating database. Cause: java.lang.NullPointerException ### The error may involve com.hzgroup.switchpr...
- 1 数据缓存设计结构 1.1 一级缓存 Session会话级别的缓存,位于表示一次数据库会话的SqlSession对象之中,即本地缓存。 一级缓存是MyBatis内部实现的一个特性,用户不能配置,默认自动支持,用户无定制权利。 1.2 二级缓存 Application应用级别的缓存,生命周期长,跟Application的生命周期一样,即作用范围为整个Appli... 1 数据缓存设计结构 1.1 一级缓存 Session会话级别的缓存,位于表示一次数据库会话的SqlSession对象之中,即本地缓存。 一级缓存是MyBatis内部实现的一个特性,用户不能配置,默认自动支持,用户无定制权利。 1.2 二级缓存 Application应用级别的缓存,生命周期长,跟Application的生命周期一样,即作用范围为整个Appli...
- org.apache.ibatis.annotations包下有着 mybatis 所有的注解,让我们一文打尽! 1 @Mapper MyBatis映射器的标记接口 从mybatis3.4.0开始加入了@Mapper注解,目的就是为了不再写mapper映射文件 但是源码中并没有对于这个注解的详细解释 添加了@Mapper注解之后这个接口在编译时会生成相应的实... org.apache.ibatis.annotations包下有着 mybatis 所有的注解,让我们一文打尽! 1 @Mapper MyBatis映射器的标记接口 从mybatis3.4.0开始加入了@Mapper注解,目的就是为了不再写mapper映射文件 但是源码中并没有对于这个注解的详细解释 添加了@Mapper注解之后这个接口在编译时会生成相应的实...
- 概述 接上一篇MyBatis 学习笔记(四)—源码分析篇—配置文件的解析过程(一) 。上一篇我们介绍了properties 和settings配置的解析过程,今天我们接着来看看其他常用属性的解析过程,重点介绍typeAliases,environments等配置的解析。 typeAliases的解析过程 一个简单的别名配置如下: <typeAliases... 概述 接上一篇MyBatis 学习笔记(四)—源码分析篇—配置文件的解析过程(一) 。上一篇我们介绍了properties 和settings配置的解析过程,今天我们接着来看看其他常用属性的解析过程,重点介绍typeAliases,environments等配置的解析。 typeAliases的解析过程 一个简单的别名配置如下: <typeAliases...
- 前言 接上一篇,今天我们接着来分析MyBatis的源码。今天的分析的核心是SQL的执行过程。主要分为如下章节进行分析 代理类的生成SQL的执行过程处理查询结果 mapper 接口的代理类的生成过程分析 首先我们来看看mapper 接口的代理类的生成过程,如下是一个MyBatis查询的调用实例。 StudentMapper mapper = sqlSessio... 前言 接上一篇,今天我们接着来分析MyBatis的源码。今天的分析的核心是SQL的执行过程。主要分为如下章节进行分析 代理类的生成SQL的执行过程处理查询结果 mapper 接口的代理类的生成过程分析 首先我们来看看mapper 接口的代理类的生成过程,如下是一个MyBatis查询的调用实例。 StudentMapper mapper = sqlSessio...
- 前言 在面试中我们经常会被到MyBatis中 #{} 占位符与${}占位符的区别。大多数的小伙伴都可以脱口而出#{} 会对值进行转义,防止SQL注入。而${}则会原样输出传入值,不会对传入值做任何处理。本文将通过源码层面分析为啥#{} 可以防止SQL注入。 源码解析 首先我们来看看MyBatis 中SQL的解析过程,MyBatis 会将映射文件中的SQL拆分成一个... 前言 在面试中我们经常会被到MyBatis中 #{} 占位符与${}占位符的区别。大多数的小伙伴都可以脱口而出#{} 会对值进行转义,防止SQL注入。而${}则会原样输出传入值,不会对传入值做任何处理。本文将通过源码层面分析为啥#{} 可以防止SQL注入。 源码解析 首先我们来看看MyBatis 中SQL的解析过程,MyBatis 会将映射文件中的SQL拆分成一个...
- 今天接着说说如何在日志中配置SQL打印输出。 log4j的依赖添加 <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.7</vers... 今天接着说说如何在日志中配置SQL打印输出。 log4j的依赖添加 <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.7</vers...
- 问题描述: 如果三表(包括了关系表)级联查询,主表和明细表的主键都是id的话,明细表的多条数据只能查询出来第一条/最后一条数据。 三个表,权限表(Permission),权限组表(PermissionGroup),权限组与权限的关系表(PermissionPermissionGroupKey) 实体类就不写上来了。 原出错映射文件: <r... 问题描述: 如果三表(包括了关系表)级联查询,主表和明细表的主键都是id的话,明细表的多条数据只能查询出来第一条/最后一条数据。 三个表,权限表(Permission),权限组表(PermissionGroup),权限组与权限的关系表(PermissionPermissionGroupKey) 实体类就不写上来了。 原出错映射文件: <r...
- MyBatis分页查询SQL Server2008时出现’@P0’ 附近有语法错误” Error querying database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: ‘@P0’ 附近有语法错误。 错误如下: org.springframework.jdbc.Uncategori... MyBatis分页查询SQL Server2008时出现’@P0’ 附近有语法错误” Error querying database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: ‘@P0’ 附近有语法错误。 错误如下: org.springframework.jdbc.Uncategori...
- 11.5 自动映射(Auto-mapping) -《SSM深入解析与项目实战》 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 11.5 自动映射(Auto-mapping) 自动映射与配置映射 11.5 &nbs... 11.5 自动映射(Auto-mapping) -《SSM深入解析与项目实战》 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 11.5 自动映射(Auto-mapping) 自动映射与配置映射 11.5 &nbs...
- 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 11.3 参数(Parameters) 11.3.1 安全传参 简单的传参 复杂的传参 指定参数的类型 11.3.2 字符串替换 11.3 参数(Parameters) ... 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 11.3 参数(Parameters) 11.3.1 安全传参 简单的传参 复杂的传参 指定参数的类型 11.3.2 字符串替换 11.3 参数(Parameters) ...
- 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 第10章 MyBatis的XML配置文件 10.1 properties 属性 引入properties文件与设置properties键值对 jdbc.properties文件 数据库配置 指定... 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 第10章 MyBatis的XML配置文件 10.1 properties 属性 引入properties文件与设置properties键值对 jdbc.properties文件 数据库配置 指定...
- 19.3.1 集成MyBatis-Plus(数据库实体快速生成)-《SSM深入解析与项目实战》 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 19.3 数据库实体快速生成 19.3.1 集成MyBatis-... 19.3.1 集成MyBatis-Plus(数据库实体快速生成)-《SSM深入解析与项目实战》 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 19.3 数据库实体快速生成 19.3.1 集成MyBatis-...
- 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 10.2 settings设置 完整的settings标签配置 10.2 settings设置 关于settings是设置,都是在settings标签中进行配置的。也就是对应前面... 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 10.2 settings设置 完整的settings标签配置 10.2 settings设置 关于settings是设置,都是在settings标签中进行配置的。也就是对应前面...
- 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 10.8 databaseIdProvider数据库厂商标识 MyBatis可以根据不同的数据库厂商执行不同的语句,这种多厂商的支持是基于映射语句中的databaseId属性。MyBatis会加载不带da... 项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm 文章目录 10.8 databaseIdProvider数据库厂商标识 MyBatis可以根据不同的数据库厂商执行不同的语句,这种多厂商的支持是基于映射语句中的databaseId属性。MyBatis会加载不带da...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中
热门标签