黄团团
用博客分享技术和记录总结,不讲废话,只讲干货!
展开
-
ofd转pdf报错:org.ofdrw.reader.ZipUtil.unZipFileByApacheCommonCompress【已解决】
ofd转pdf报错:java.lang.NoClassDefFoundError:org/apache/commons/io/function/IOIterator at org.ofdrw.reader.ZipUtil.unZipFileByApacheCommonCompress,java.lang.NoSuchMethodError:org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextEntry()原创 2025-03-21 14:00:46 · 438 阅读 · 0 评论 -
MyBatis多次查询返回相同的对象BUG解决
多次查询相同的数据库记录,但每次查询返回的对象是同一个实例的引用:经过我反复研究和测试,先说结论是缓存导致的问题,因为MyBatis 的一级缓存是默认开启的,在同一事务中(我加了@Transactional这个注解),相同的查询只会返回缓存中的对象,而不会从数据库中重新加载,换而言之,这2个对象指向的都是同一个对象地址,是同一个实例,而不是新的实例。原创 2025-03-17 13:44:28 · 45 阅读 · 0 评论 -
Apache POI解析Excel单元格读出的是公式而不是计算结果的问题(已解决)
Apache POI解析Excel单元格读出的是公式而不是计算结果的问题(已解决):有的时候单元格的数据是通过公式计算得出的,默认读取的单元格数据就为:=A52+B52,这不是所期望的数据。获取单元格的值,这里我只贴出了公式数据类型,还有数字,字符串,时间等等类型,因为和本篇无关,所以我就不贴了。以下是我个人的解决办法,我贴出一些关键代码。原创 2025-02-06 09:14:13 · 118 阅读 · 0 评论 -
SpringBoot整合Mapstruct转换器使用教程(提供Gitee源码)
MapStruct 是一个 Java 注解处理器,主要是为了简化 Java 应用程序中不同对象之间(特别是 DTO(Data Transfer Object)、VO(Value Object)、BO(Business Object)和数据库实体类等)数据转换的过程。原创 2025-01-03 08:54:59 · 190 阅读 · 0 评论 -
SpringBoot定时任务@Scheduled完整功能详解(提供Gitee源码)
在SpringBoot中,默认情况下,@Scheduled注解所定义的定时任务是串行执行的。也就是说,如果有多个定时任务(例如,在同一时间点触发),Spring会按顺序执行它们,而不会并行运行,串行执行:这意味着一个任务必须完全执行完毕后,下一个任务才能开始。即使一个任务在执行过程中耗时较长,其他定时任务也必须等待。原创 2024-10-12 11:02:58 · 481 阅读 · 0 评论 -
SpringBoot整合MyBatis-Plus完整详细版(提供Gitee源码)
本篇文章完整详细介绍了SpringBoot整合MyBatis-Plus的完整过程,这边我的SpringBoot版本是2.4版本、JDK1.8和Maven3.8.1版本,跟着文章一步步走就可以了,MyBatis-Plus整合非常方便,也是现在企业开发中经常会用的一个持久层框架。原创 2024-08-13 20:58:42 · 551 阅读 · 0 评论 -
团团代码生成器V3.0:一键生成完整的CRUD功能
本次博主开发的代码生成器支持MySQL和Oracle两个主流的数据库,在yml文件中配置好信息,运行生成器就会自动生成对应的代码文件,然后复制到自己的项目中即可!原创 2024-08-12 16:08:55 · 192 阅读 · 0 评论 -
Cause: java.sql.SQLSyntaxErrorException: Table ‘master.user‘ doesn‘t exist表/视图不存在踩坑记录(提供Gitee源码)
org.springframework.jdbc.BadSqlGrammarException:### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Table 'master.product' doesn't exist表/视图不存在。原创 2024-07-19 15:38:40 · 470 阅读 · 0 评论 -
【Bug解决】org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException
这个报错提示是在处理YAML格式文件时出现了字符编码错误,可能是文件中包含了无法识别的字符导致的。同样的,粘贴完以后,也需要对Maven先进行clean操作再启动项目。原创 2024-06-07 09:05:10 · 1562 阅读 · 0 评论 -
SpringBoot解决跨域的三种解决方案
跨域是指在 Web 开发中,通过不同域名的网站之间进行数据交互或资源共享时,由于浏览器的同源策略限制导致的访问限制问题。同源策略要求网页中所有资源的请求都要与页面来源相同,包括协议、域名、端口号必须完全一致。如果请求的资源与页面来源不一致,就会触发跨域问题。原创 2024-06-06 16:01:35 · 668 阅读 · 0 评论 -
SpringBoot实现发送邮件功能
使用SpringBoot框架迅速实现邮件发送的功能,提供完整的代码。原创 2024-06-06 14:22:09 · 648 阅读 · 0 评论 -
SpringBoot实现ofd文件完美转换为pdf文件(亲测可用)
在拉取第三方提供的发票文件的时候,只返回了ofd格式的文件,没有pdf文件的兼容性这么好,应客户要求需要转换为pdf格式的文件,网上找了很多相关转换代码,层次不齐,有的写的乱七八糟就放上去了,于是自己总结了一下,手写了个ofd格式文件转换为pdf文件的通用方法,大家直接一键复制使用即可。原创 2024-05-15 13:45:14 · 447 阅读 · 0 评论 -
org.springframework.beans.factory.BeanNotOfRequiredTypeException异常处理
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'studentService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanNotOfRequiredTypeException原创 2024-03-20 10:42:52 · 324 阅读 · 3 评论 -
SpringSecurity配置MD5加密方式
SpringSecurity默认提供的加密类型是强散列哈希加密实现:BCryptPasswordEncoder,在实际开发中需要配置自定义的加密方式。原创 2024-03-06 10:54:28 · 642 阅读 · 0 评论 -
SpringBoot整合Mongodb实现增删改查功能(提供Gitee源码)
SpringBoot整合Mongodb实现增删改查功能原创 2024-02-22 08:56:19 · 321 阅读 · 0 评论 -
SpringBoot基于Aop优雅的处理参数中的空格(提供Gitee源码)
在实际开发中,很多用户会不经意的输入空格,导致存入数据库中的信息也同样存在空格,这样会导致根据某个字段去查询数据的时候总是查询不到的问题,后来才发现是因为多了个空格的问题,如果我们按传统的方式在每个方法中一个个对空格进行处理,这样会导致代码看起来非常臃肿,后期维护起来也非常繁琐,于是我便想通过Spring的Aop方法是进行优雅的处理,以下是我完整的思路和代码。原创 2024-02-18 15:24:52 · 583 阅读 · 2 评论 -
【亲测可用】SpringBoot使用Redis的Lettuce连接池报RedisCommandTimeoutException
在最近新项目的开发当中,当项目刚启动的时候访问Redis服务一切正常,但是过了几分钟后再次访问Redis就报如下错误。'Redis command timed out; nested exception is io.lettuce.core.RedisCommandTimeoutException: Command timed out after 10 second(s)'原创 2023-11-07 20:14:10 · 1964 阅读 · 0 评论 -
一文详解SpringBoot中拦截器和过滤器的作用和区别
前言:在实际项目开发中肯定会使用到拦截器和过滤器,但是一直没有深挖它们之间的作用和具体的区别,本篇博客就从简介、工作流程、主要方法、应用场景和代码实现这5个点带大家剖析SpringBoot中拦截器和过滤器的作用和区别。原创 2023-11-06 09:59:02 · 290 阅读 · 0 评论 -
SpringSecurity中的WebSecurityConfigurerAdapter已弃用解决方案(亲测可用)
SpringSecurity中的WebSecurityConfigurerAdapter已弃用解决方案(亲测可用)原创 2023-11-06 08:47:50 · 2479 阅读 · 0 评论 -
【小白福音】手把手教学搭建Vue+SpringBoot开发环境完整教程
前言:在很多新手小白在准备开发一个属于自己的前后端分离项目的时候需要准备一些例如Java环境配置、Node.Js配置、Maven配置以及软件安装等等,于本次博主亲自录制了一套完整的安装配置教程,提供到最后给大家进行下载。原创 2023-11-03 20:52:52 · 530 阅读 · 0 评论 -
@Transactional和@DS避免数据源冲突的解决方案(提供gitee源码)
如何解决@Transactional和@DS的冲突问题,从业务还原、原因剖析和如何解决这三点一步步阐明,一份详细的总结文档原创 2022-09-30 13:58:58 · 7454 阅读 · 4 评论 -
SpringBoot整合Jpa实现增删改查功能(提供Gitee源码)
前言:在日常开发中,总是撰写一些简单的SQL会非常耗时间,Jpa可以完美的帮我们提高开发的效率,对于常规的SQL不需要我们自己撰写,相对于MyBatis有着更简单易用的功能,但是MyBatis自由度相对于Jpa会更高一些,所以Jpa比较适用于一些中小型的项目开发,提高开发人员的开发效率,下面我就完整的介绍一下SpringBoot是如何整合Jpa来实现完整的增删改查功能的。原创 2023-08-31 10:04:07 · 1055 阅读 · 0 评论 -
SpringBoot实现文件上传和下载笔记分享(提供Gitee源码)
汇总了一下目前SpringBoot项目当中常见文件上传和下载的功能,一共三种常见的下载方式和一种上传方式,特此做一个笔记分享。原创 2023-08-26 09:54:59 · 1381 阅读 · 0 评论 -
SpringBoot生成和解析二维码完整工具类分享(提供Gitee源码)
在日常的开发工作当中可能需要实现一个二维码小功能,我参考了网上很多关于SpringBoot生成二维码的教程,最终还是自己封装了一套完整生成二维码的工具类,可以支持基础的黑白二维码、带颜色的二维码、带Logo的二维码、带颜色和Logo的二维码和解析二维码,一共4种非常的全面了,可以生成具体的二维码文件或返回Base64,都是博主自己手写封装好的,这边免费开源给大家一键使用!只求大家一个免费的三连支持!原创 2023-08-22 22:12:59 · 1505 阅读 · 2 评论 -
团团代码生成器V2.0:一键生成完整的CRUD功能(重磅来袭!)
考虑到在之前的V1.0版本只支持MySQL数据库,有点局限,因为在实际的项目开发中还会用到一个主流的Oracle数据库,所以我在V1.0的版本上进行了增强,新增了对Oracle数据库CRUD功能的生成,良心博主原创不易,求大家三连支持,承诺代码生成器永远免费开源给大家!原创 2023-08-18 18:38:38 · 1017 阅读 · 2 评论 -
团团代码生成器V1.0:一键生成完整的CRUD功能(提供Gitee源码)
在日常开发的中,经常会需要重复写一些基础的增删改查接口,虽说不难,但是会耗费我们一些时间,所以我自己开发了一套纯SpringBoot实现的代码生成器,可以为我们生成单条数据的增删改查,还可以生成多条数据的批量新增、修改和删除功能,可以大大提高我们的开发效率,本篇博客我会详细介绍这套代码生成器的使用教程。原创 2023-08-17 20:56:51 · 1538 阅读 · 3 评论 -
SpringBoot中优雅的实现隐私数据脱敏(提供Gitee源码)
在实际项目开发中,可能会对一些用户的隐私信息进行脱敏操作,传统的方式很多都是用replace方法进行手动替换,这样会由很多冗余的代码并且后续也不好维护,本期就讲解一下如何在SpringBoot中优雅的通过序列化的方式去实现数据的脱敏操作!原创 2023-08-15 23:19:45 · 1932 阅读 · 3 评论 -
【万字长文】Vue+SpringBoot实现大文件秒传、断点续传和分片上传完整教程(提供Gitee源码)
最近在实际项目中碰到一个需求,客户可能会上传比较大的文件,如果采用传统的文件上传方案可能会存在服务器压力大、资源浪费甚至内存溢出的一些安全风险,所以为了解决一系列问题,需要采用新的技术方案来实现大文件的上传;空闲的时候参考了网上的一些相关教程,最后自己归纳总结了一下,本篇博客我就逐步讲解了我是如何一步步去实现大文件秒传、断点续传和分片的这三个功能的,每段代码都会进行讲解,在博客的最后我会提供Gitee源码供大家下载。原创 2023-08-11 13:38:34 · 2360 阅读 · 9 评论 -
【万字长文】SpringBoot整合Atomikos实现多数据源分布式事务(提供Gitee源码)
在最近的实际开发的过程中,遇到了在多数据源的情况下要保证原子性的问题,这个问题当时遇到了也是思考了一段时间,后来通过搜集大量资料与学习,最后是采用了分布式事务来解决这个问题,在讲解之前,在我往期的博客提前搭好了一个SpringBoot整合MyBatis搭建MySQL多数据源的教程,本篇博客我是在原有的这个项目的基础之上进行的改造,主要新增了几个配置项进行实现的,大家可以先简单的看一下这篇文章!原创 2023-08-04 00:28:24 · 2336 阅读 · 0 评论 -
【万字长文】SpringBoot整合MyBatis搭建MySQL多数据源完整教程(提供Gitee源码)
在我往期的博客介绍了2种关于如何使用SpringBoot搭建多数据源操作,本期博客我参考的是目前主流的框架,把最后一种整合多数据源的方式以博客的形式讲解完,整合的过程比较传统和复杂,不过我依旧会把每个实体类的思路都给大家讲解清楚的,项目的最后我都会提供Gitee源码地址。原创 2023-08-01 10:20:28 · 2399 阅读 · 2 评论 -
SpringBoot整合RedisTemplate操作Redis数据库详解(提供Gitee源码)
简单分享一下我在实际开发当中如何使用SpringBoot操作Redis数据库的技术分享,完整的代码我都提供了出来,大家按需复制使用即可!原创 2023-07-30 17:16:53 · 1425 阅读 · 1 评论 -
【万字长文】SpringBoot整合SpringSecurity+JWT+Redis完整教程(提供Gitee源码)
最近在学习SpringSecurity的过程中,参考了很多网上的教程,同时也参考了一些目前主流的开源框架,于是结合自己的思路写了一个SpringBoot整合SpringSecurity+JWT+Redis完整的项目,从0到1写完感觉还是收获到不少的,于是我把我完整的笔记写成博客分享给大家,算是比较全的一个项目了,仅供大家参考和学习哦!原创 2023-07-28 01:05:56 · 6250 阅读 · 0 评论 -
Java中使用工厂模式和策略模式优雅消除if-else语句(UML类图+案例分析)
在最近的后端开发中,多多少少会发现有很多if-else语句,如果条件过多则会造成整体代码看起来非常臃肿。本篇博客汇总了我对工厂模式和策略模式的理解,以及我是如何把它们巧妙运用在实际项目当中的一些技巧进行了分享,如有问题,欢迎评论区讨论!原创 2023-07-11 15:54:42 · 2120 阅读 · 1 评论 -
SpringBoot整合RestTemplate用法讲解(完整详细)
本篇主要介绍了RestTemplate中的GET,POST,PUT,DELETE、文件上传和文件下载6大常用的功能,每一个方法和每一行代码都进行了详细的讲解,代码都是亲自测试过的,整篇博客写完以后自己也是受益匪浅,于是在这做个技术分享!原创 2023-07-07 09:19:34 · 4360 阅读 · 0 评论 -
SpringBoot操作Excel实现导入和导出功能(详细讲解+Gitee源码)
在日常的开发中,避免不了操作Excel,比如从系统当中导出一个报表,或者通过解析客户上传的Excel文件进行批量解析数据入库等等,本篇博客主要汇总日常开发中如何使用开源的Apache提供的POI流操作Excel进行导入导出功能详解原创 2023-07-04 22:57:07 · 5373 阅读 · 1 评论 -
SpringBoot处理全局异常详解(全面详细+Gitee源码)
我们对常见的七种异常情况统一进行处理,这次的主角就是@RestControllerAdvice这个注解,这个一个组合注解由@ControllerAdvice和@ResponseBody组成,@RestControllerAdvice会帮助我们把信息转成json格式返回。在全局异常处理类只需要在类上标注@RestControllerAdvice,并在处理相应异常的方法上使用@ExceptionHandler注解,写明处理哪个异常即可。注:异常的拦截有顺序,子类异常会优先匹配子类异常处理器。原创 2023-07-04 09:27:28 · 2605 阅读 · 1 评论 -
手把手教学使用宝塔面板部署前后端分离项目(全面详细)
平日里我们的前后端项目基本上都是通过linux系统提供的命令窗口去部署,有没有一种更简单可视化的方式去部署我们自己的项目呢,答案是有的,本篇博客就是手把手教学如何通过一个可视化的页面去部署我们自己开发的前后端分离项目。原创 2023-07-01 14:47:55 · 6865 阅读 · 16 评论 -
SpringBoot整合logback日志框架详解(提供Gitee源码)
本篇博客主要介绍如何把主流的日志框架快速整合到目前的SpringBoot框架中,对六种日志等级进行介绍以及使用方法。目前常用的就四个级别,由高到低分别是ERROR、WARN、INFO、DEBUG,在SpringBoot框架中可以控制打印输出的日志级别,例如配置成了INFO级别的日志,那么在INFO级别以下的日志将不会被打印出来。原创 2023-07-01 00:51:34 · 970 阅读 · 0 评论 -
从0到1搭建SpringBoot整合Quartz定时任务框架(保姆级教学+Gitee源码)
Quartz是一个完全由Java编写的开源作业调度框架,在Java应用程序中进行作业调度提供了强大功能,以下是Quartz的四个核心概念。1、Job(接口):它只有一个execute方法需要被重写,重写的内容就是咱们需要执行的具体内容。2、JobDetail(调度信息):表示一个具体的可执行的调度程序,Job是这个可执行调度程序中所需要执行的具体内容,另外JobDetail还包含了这个任务的调度方案和策略。3、Trigger(触发器):代表一个调度参数的配置,动态去执行咱们的定时任务。原创 2023-06-28 00:41:46 · 3158 阅读 · 6 评论 -
SpringBoot集成WebSocket实现消息实时推送(提供Gitee源码)
在最近的工作当中,客户反应需要实时接收消息提醒,这个功能虽然不大,但不过也用到了一些新的技术,于是我这边写一个关于我如何实现这个功能、编写、测试到部署服务器,归纳到这篇博客中进行总结。原创 2023-06-22 12:20:50 · 4983 阅读 · 0 评论