- 博客(27)
- 收藏
- 关注
原创 在 for 循环中用查询,相同参数返回的结果却不同?MyBatis 缓存的坑...
MyBatis一级缓存导致查询结果异常的分析与解决方案 摘要:本文分析了MyBatis-plus的selectByIds查询返回异常结果的问题:当传入参数为[1,2,3]时,返回结果却包含[1,2,3,4]。问题根源在于MyBatis一级缓存机制——缓存存储的是查询结果对象的引用而非深拷贝。在@Transactional事务中,第一次查询[1,2,3]后修改了结果对象,导致后续相同查询直接返回被污染的缓存数据。提供了四种解决方案:1)拷贝查询结果;2)缩短SqlSession生命周期;3)重构代码;
2025-10-13 17:39:10
1007
原创 Mybatis-plus 分页查询缓慢;临时表相关问题
MyBatis-Plus分页查询在正式环境性能下降问题分析 问题现象:测试环境正常的MyBatis-Plus分页查询,在正式环境变慢,但直接执行SQL正常。 根本原因:查询中使用DISTINCT导致MyBatis-Plus无法优化count查询,生成临时表。MySQL优先使用内存临时表,但数据量大时会退化为磁盘临时表,导致性能急剧下降。 关键发现: MyBatis-Plus分页会生成count和data两个SQL 带DISTINCT的count查询会生成子查询和临时表 去除DISTINCT后count查询被
2025-10-10 16:58:20
888
原创 IDEA 启动 Gradle 项目时传递的属性值不生效问题处理
IDEA启动Gradle项目传属性值不生效问题,原因是IDEA启动默认是包含build阶段的,需要去掉build或者修改build操作。
2024-09-06 22:16:00
654
1
原创 java -version ‘java‘ 不是内部或外部命令,也不是可运行的程序; 切换java版本后,java -version还是原java版本问题处理
当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到 path 中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
2024-09-06 09:09:29
3693
原创 API 参数总结
如果你不加注解,都不是必传。如果你家了注解,默认都是必传。只有 Body 参数只能有一个,其他都可以有多个。路径参数、query 参数、body 参数。
2023-11-17 17:31:57
1033
原创 多条数据的跳转查看方案
项目上遇到一个需求:报表显示的结果(比如:个数34个)需要能够跳转到汇总页面。且汇总页面只显示34条数据。传递该数据的坐标信息传递Id集合传递rediskey。
2023-08-30 15:55:33
268
原创 执行拼接SQL的java书写方式
项目上遇到一个功能需要对用户输入的数据表进行各种操作,这个时候需要自己拼接SQL然后执行。直接用字符串自己拼接,这种方法要特别注意前后空格。使用org.apache.ibatis.jdbc.SQL进行拼接。放入mapper.xml中用${sqlText}进行执行。使用mabtis的注解@SelectProvider等进行执行。
2023-08-30 14:47:00
2443
原创 java.lang.ClassNotFoundException: org.springframework.test.context.TestContextAnnotationUtils问题处理
Caused by: java.lang.ClassNotFoundException: org.springframework.test.context.TestContextAnnotationUtils解决方案和问题查找思路
2023-08-10 16:25:34
3314
1
原创 大数据量Excel文件处理报错问题:【Tried to allocate an array of length XX, but the maximum length for this...】
尝试分配一个长度为260,008,239的数组,但是该记录类型的最大长度为100,000,000所导致的。这是Nginx服务器的报错,是因为后端接口时间长时间没返回结果,服务器自动连接超时。将 原文件的每一个sheet页的值复制给新的 Workbook的sheet。将.xlsx 的每一个页签单独生成一个新的excel文件,并上传文件。2、使用 SXSSFWorkbook 来接收 原excel的每一个页签。项目上使用的 XSSFWorkbook 来处理 .xlsx文件。缩小excel的大小,报错。
2023-08-10 11:24:31
6651
1
原创 Illegal mix of collations (XXX) and (XXX) for operation ‘XXX’
问题描述mybatis使用INSTR的时候报错(数据库为MySQL)—— Illegal mix of collations (XXX) and (XXX) for operation 'XXX’– Cause: java.sql.SQLException: Illegal mix of collations (utf8_bin,NONE) and (utf8mb4_general_ci,COERCIBLE) for operation ‘instr’– uncategorized SQLExcept
2022-03-23 16:20:16
1608
原创 SpringCloud相关知识点
文章目录前言一、微服务1、基本概念2、优缺点优点缺点3、SpringCloud的五大组件二、简单使用1、分别创建一个微服务提供者和微服务消费者的父工程3、过程中遇到的问题1、Non-resolvable import POM2.Dependency 'org.springframework.boot:spring-boot-starter-jetty:' not found3.Unknown character set index for field '255' received from server.4
2021-07-20 15:38:52
1342
原创 springboot相关知识
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、创建SpringBoot项目二、遇到的问题1.问题:whitelabel error page2.问题:Failed to configure a DataSource: 'url' attribute is not specified and no embedded3.问题:com.mysql.cj.exceptions.DataConversionException: Unsupported conversion fro
2021-07-15 19:32:24
304
2
原创 mybatis相关知识
文章目录前言一、配置文件二、使用步骤1.引入库2.读入数据总结前言mybatis相关内容记录,包括一些基本用法和名词解释以及遇到的问题。一、配置文件位置及名称设置:建立一个mybatis-config.xml文件,放在resource文件夹下配置编写:mybatis-config.xml的编写<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis
2021-07-14 20:45:36
93
原创 maven相关知识
文章目录前言一、下载,安装二、使用idea创建maven项目3、maven一些指令二、使用步骤1.引入库2.读入数据总结前言学习maven时,遇到的一些知识点和问题,在此记录下来。一、下载,安装略遇到的问题:cmd中输入:mvn --version显示:mvn不是内部或外部命令,也不是可运行的程序或批处理文件出现这个问题的一个原因是:1、环境变量没配置好,首先上网搜索怎么配置maven的环境变量2、如果环境变量是配置好了的,就可以在Path中添加:%SystemRoot%\system
2021-07-13 16:12:56
168
原创 git笔记
文章目录前言一、git二、使用步骤1.引入库2.读入数据总结前言关于git的相关知识记录,可能十分混乱,正在学习阶段,看到什么写什么,以后觉得差不多的时候便会开始整理一、git初始化仓库:git init删除本地仓库:直接删除.git文件连接远程仓库:git remote add origin http取消连接远程仓库:获取远程分支:git pull origin "分支名"(部分);git fetch origin/git pull origin(全部)二、使用步骤1.引入库..
2021-07-12 20:15:36
103
原创 2021-07-06
docker笔记前言一、安装1、前言2、下载链接3、部分安装过程4、遇到的问题二、docker相关运用1.使用docker运行mysql2.读入数据总结前言记录有关docker的一些用法和遇到的问题,仅仅代表个人观点,如有不足,希望指点一、安装1、前言因为是win10家庭版,且我这个只有C盘,我怕升级之后导致文件丢失,就很难受。所以我选择使用dockerToolBox方法进行下载。2、下载链接百度云盘:链接:https://pan.baidu.com/s/1bgfa0kdTcb3tzKh
2021-07-06 20:48:44
157
原创 2021-07-06 MySQL笔记
MySQL笔记前言一、基本概念二、安装三、卸载四、服务启动和关闭五、常用命令1.mysql相关操作2. 数据库操作3.表的操作六、SQL语句的分类(记一下)前言主要是学习MySQL数据库时的一些笔记,加强记忆,并获取重点,方便以后复习一、基本概念数据库(DB):按照一定格式存储的一些文件的组合。(存储数据的仓库,一堆文件)数据库管理系统(DBMS):管理数据库中的数据,可以对数据库中的数据进行增删改查。(常见的有:MySQL、Oracle、MS、SqlServer、DB2、sybase等)S
2021-07-06 18:49:17
846
原创 2021-07-06
文章包含的东西主要是为了记录工作中遇到的问题,也包括做些学习笔记。还会包括一些学习心得或者是个人感悟(各种感悟都可能会有)。有的时候应该也会写一下生活情况。大概就是这样,希望自己逐渐变好!...
2021-07-06 10:05:19
82
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅