目录一、缓存的作用二、SpringBoot启用缓存三、SpringBoot可整合的缓存技术四、缓存使用案例——收集验证码实体类开发业务层开发工具类(生成验证码)控制层开发SpringBoot启动类测试五、变更缓存供应商Ehcache一、缓存的作用缓存缓存时一种介于数据永久存储介质与数据应用之间的数据临时存储介质使用缓存可以有效的减少低速数据读取过程的次数(例 ......
5
0
0
2024-09-14
一、SpringBoot启动配置原理简述本内容直接查看分析SpringBoot启动配置原理,传送门:https://zyfcodes.blog.csdn.net/article/details/130903779因为本期的各种优化干预手段都依赖其基本原理,建议在使用前进行阅读。二、SpringBoot启动过程干预Spring Boot启动过程中我们可以实现以 ......
57
0
0
2024-08-27
在有些场景,能通过调整日志的打印策略来提升我们的系统吞吐量,你知道吗?我们以Springboot集成Log4j2为例,详细说明Springboot框架下Log4j2是如何工作的,你可能会担心,如果是使用Logback日志框架该怎么办呢?其实Log4j2和Logback极其相似,Springboot在启动时处理Log4j2和处理Logback也几乎是一样的套路 ......
134
0
0
2024-08-12
简介MyBatis框架的核心功能其实不难,无非就是动态代理和jdbc的操作,难的是写出来可扩展,高内聚,低耦合的规范的代码。上图分析总结: 1、mybatis的配置文件有2类mybatisconfig.xml,配置文件的名称不是固定的,配置了全局的参数的配置,全局只能有一个配置文件。Mapper.xml 配置多个statemement,也就是多个sql,整个 ......
151
0
0
2024-07-27
简介罗曼罗兰说过:世界上只有一种英雄主义,就是看清生活的真相之后依然热爱生活。对于 Lombok 我相信大部分人都不陌生,但对于它的实现原理以及缺点却鲜为人知,而本文将会从 Lombok 的原理出发,手撸一个简易版的 Lombok,让你理解这个热门技术背后的执行原理,以及它的优缺点分析。Lombok 是一个非常热门的开源项目,使用它可以有效的解决 Java ......
141
0
0
2024-07-27
简介Spring Boot非常简单容易上手,它隐藏了很多内容而不需要你去关心。但对于一个好的开发人员也许希望知道Spring Boot自动配置背后到底发生了什么?Spring Boot并不属于一种新的技术,只不过Spring Boot的启动器帮我们配置了若干个被Spring管理的bean,当我们的项目依赖这些jar并启动Spring应用时,Spring的Co ......
141
0
0
2024-07-27
实现流程: 自定义拦截器——注入拦截器——获取请求IP——对比IP是否一致——请求返回文章背景: 接口添加IP白名单限制,只有规定的IP可以访问项目。实现思路: 添加拦截器,拦截项目所有的请求,获取请求的网络IP,查询IP是否在白名单之中,白名单设置在数据库中,用一张表存储,若在表中有此IP则进行下一步,不在则进行请求拦截,返回 ......
235
0
0
2024-06-09
mybatis plus简介来自官方对于mybatis plus的介绍:MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。其支持以下特性:无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接 ......
287
0
0
2024-05-29
前言一个老项目中使用了Hibernate,是SpringMVC项目,要把定时任务拆出来,使用SpringBoot集成Hibernate,今天整理下集成的过程。基础概念什么是HibernateHibernate是一个流行的ORM(对象关系映射)框架,它可以将Java对象映射到数据库表,从而方便地进行持久化操作。在Spring Boot项目中,集成Hiberna ......
304
0
0
2024-05-16
最近,我们的系统新增了一个客服模块,其中一个重要功能是能够以PDF格式导出客服与用户之间的聊天记录。这些聊天记录包含文字、图片和文件等多种内容。为了实现这一功能,我们首先使用了itextpdf 5.x版本制作了一个Demo。今天,我将与家人们分享一下这项进展。itextpdf.jpgiTextPDF 介绍iTextPDF 是一个用于创建和操作 PDF(Por ......
253
0
0
2024-05-15
在上一章我们分析了SpingBoot启动流程中实例化SpingApplication的过程。return new SpringApplication(primarySources).run(args); 这篇文章咱么说下run()方法开始之后都做了那些事情。 继续往下跟着源码进入到run()这个是比较核心的一个方法了 public ConfigurableA ......
209
0
0
2024-04-18
我们都知道SpringBoot自问世以来,一直有一个响亮的口号"约定优于配置",其实一种按约定编程的软件设计范式,目的在于减少软件开发人员在工作中的各种繁琐的配置,我们都知道传统的SSM框架的组合,会伴随着大量的繁琐的配置;稍有不慎,就可能各种bug,被人发现还以为我们技术很菜。而SpringBoot的出现不仅大大提高的开发人员的效率,还能避免由于"手抖"带 ......
229
0
0
2024-04-18
前言由于在最近的项目中使用Excel导入和导出较为频繁,以此篇博客作为记录,方便日后查阅。本文前台页面将使用layui,来演示对Excel文件导入和导出的效果。本文代码已上传至我的gitHub,欢迎访问,地址:https://github.com/rename123/excel-demo准备工作1. 添加操作Excel的有关依赖,如下: &lt ......
155
0
0
2024-04-18
前言之前说了使用JdbcTemplate、MyBatis、Spring Data JPA三种连接数据库的方式。对于一些不常变更,或者是数据库数据太多,需要优化请求速度的,我们可以使用二级缓存解决。二级缓存分两种本地缓存 比如 Ehcache远程缓存 比如 Redis我们可以根据实际情况选择对应的缓存。Ehcache在使用 Spring Data JPA 进行 ......
180
0
0
2024-04-10
Code基础工程启动类@SpringBootApplication public class LifeCycleApplication { /** * 除了手工add , 在 META-INF下面 的 spring.factories 里增加 * org.springframework.context.Applica ......
182
0
0
2024-04-03