自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 资源 (1)
  • 收藏
  • 关注

原创 规范拼接URL地址和参数,你还不会吗?

符合阿里巴巴代码规范的URL地址和参数拼接方式,URL编码,以及不管是否在Spring Boot都能灵活运用!

2024-11-18 17:53:34 288

原创 在Linux服务器上,从nohup.out过滤错误日志,看这一篇就够了

前段时间在Linux服务器上线了一个应用服务。但是由于在线运行时间过长,日志文件nohup.out已经大得不方便查看错误日志。。要在Linux服务器上查看nohup.out文件中的错误日志,可以使用以下几种方法:

2024-11-08 10:01:54 342

原创 记录一个Java stream API reduce() BigDecimal的一个坑(祝大家1024节日快乐)

记录一下在使用Java steam API中的reduce()方法对BigDecimal求和过程中遇见的坑。

2024-10-24 19:54:53 350 1

原创 Redis批量删除指定前缀的key

在redis中,启用redis-cli键入命令即可删除指定前缀的key,示例中代码可用于删除RuoYi项目中用户token,以此为例可以自行指定要删除的key。

2024-05-21 10:27:54 3948 1

原创 设计模式——策略模式

Define a family of algorithms, encapsulate each one, and make them interchangeable.定义一系列算法,将它们一个个封装起来,并且使它们之间可以相互替换。 策略模式也称为政策模式(Policy),让算法独立于使用它的客户而变化,且算法的变化不会影响到使用算法的客户。

2024-03-05 15:59:27 1427

原创 SpringBoot中实现拦截器和过滤器

在Spring boot应用场景中,关于“过滤器”和“拦截器”的描述、配置、应用与总结。

2024-03-04 15:57:38 1179

原创 常见图片格式

常见图片格式:jpg、png、bmp、gif、webp、base64

2024-01-23 15:42:45 2344

原创 阿里巴巴Java开发手册中的DO、DTO、BO、VO、POJO定义

简单普通的Java对象,是一种轻量级、无依赖的普通Java对象,它没有任何特殊的要求或约束,可以用来表示任何类型的数据,在Java开发中常用于表示实体类或数据模型。BO可以包含一个或多个DO对象的信息,也可以不包含DO对象的信息。总结:DO用于数据库操作,SDO用于服务层与表现层之间的数据传输,DTO用于不同层之间的数据传输,POJO是一种简单的普通Java对象。是一个与数据库表结构对应的对象,也叫持久化对象。服务数据对象,用于封装服务层与表现层之间的数据传输对象,包含业务逻辑处理时所需的数据。

2023-09-08 16:19:20 635

原创 Java位运算,不常用但很有用

【代码】Java位运算,不常用但很有用。

2023-06-25 17:20:33 199

原创 Java方法参数类型String...与String[]的使用方式比较

String[]需要一个数组作为参数,而String…可以接受任意数量的字符串作为参数,并将它们作为一个数组传递给方法。,也被称为参数的不定数量。而在Java中,使用。

2023-06-25 11:17:16 2140

原创 Springboot程序开启远程DEBUG

使用远程debug需要慎重考虑,仅在必要时才应该使用,并且要严格控制权限和范围,避免潜在的安全风险。是指的远程Debug监听端口,而非该项目的服务端口;选择项目开发对应的JDK版本号;地址即远程的公网IP地址;利用Maven将项目打包。在配置完成以后拷贝下来;即选择主程序包路径。

2023-06-16 15:56:23 6772 2

原创 更新阅读量时的常见错误:脏读

1. 根据ID获取实体 2. 判断实体是否存在 3. 使用三目运算获取当前阅读量 4. 更新阅读量 5. 获取详情同时,我们再将当前操作的数据库表的阅读数展示出来。

2023-06-16 11:37:34 224

原创 详解MySQL事务隔离级别

读未提交(Read Uncommitted):最低的隔离级别,事务对数据的修改即使没有提交也能被其他事务看到。会发生脏读、不可重复读和幻读现象。读已提交(Read Committed):事务只能读取已经提交的数据,避免了脏读现象,但是仍然可能出现不可重复读和幻读现象。可重复读Rrepeatable Read):事务在执行期间,多次读取同一数据的结果是一致的。一个事务执行过程中看到的数据,总是和这个事务开启时看到的数据是一致的。在可重复读的隔离级别下,未提交的事务对其他事务也是不可见的。

2023-06-15 17:07:16 1391

原创 Typora的激活教程

https://download.csdn.net/download/weixin_42541479/87902400?spm=1001.2014.3001.5501

2023-06-13 17:20:29 3736 19

原创 使用SqlSession批量插入数据

中的List参数大小,这与数据库的性能、连接池配置、网络传输等因素有关。为了最大化实现批量插入的效率,可以通过。属性设置每次批量插入的记录数,或者通过数据库的API实现流式插入,例如在MySQL中可以使用。另外,批量插入操作需要注意数据的唯一性和完整性,避免重复插入和数据损坏问题。需要注意的是,实际执行的批量插入的记录数可能小于。

2023-05-22 16:43:55 1581

原创 @Scheduled中的参数及Cron时间表达式

该注解提供了多种参数用于设置定时任务的执行时间和频率。cron表达式是一种时间表达式,可以用于表示基于时间的任务调度。它由6个时间部分组成,分别表示秒、分、时、日期、月份和星期,在不同的位置上使用不同的符号来表示取值范围或取值。fixedRate:频率,表示每隔多少毫秒执行一次。如果任务执行时间超过了指定的频率,则会等待任务执行完毕后再执行下一次任务。cron:用于设置高度定制化的执行时间。表示每分钟执行一次。initialDelay:初始延迟时间,表示在应用启动后多久开始执行定时任务,单位为毫秒。

2023-05-18 17:50:57 5379

原创 在Mybatis中如何在where-if的语句中判断数组或列表的长度是否为0?

来判断数组的长度是否为0。在Mybatis中,OGNL可用于在动态SQL语句中引用变量和方法。在if标签中的test属性中,使用OGNL表达式来判断idList是否不为空且长度大于0。如果成立,则使用foreach标签遍历idList数组,在SQL语句中生成对应的查询条件。假设要查询一个列表,查询条件包括一个列表idList,如果该列表不为空,则查询条件为id in (idList),否则查询条件为空。需要注意的是,在使用OGNL表达式时,需要遵循一定的语法规则,比如null值的判断、方法的调用等。

2023-05-12 18:47:13 3240 3

原创 关于JSON中嵌套了HTML代码导致解析失败的解决办法

com.alibaba.fastjson2.JSONException: illegal fieldName inputt, offset

2023-05-10 17:34:15 3493

原创 ThreadPoolTaskExecutor中的execute()方法和submit()方法有什么区别?

需要注意的是,在使用submit()方法提交任务时,不应该在任务执行过程中阻塞等待结果,否则可能会导致线程池中线程资源的浪费和性能的下降。应该在具体需要任务执行结果时再通过Future.get()方法获取异步任务的执行结果。ThreadPoolTaskExecutor是Spring框架中的一个线程池实现,它提供了execute()和submit()两种方法用于启动异步任务。

2023-05-06 15:33:22 1939

原创 @Transactional注解下使用多个线程进行异步操作数据,如果产生异常,事务是否回滚?

在processData()方法中,使用ThreadLocal记录当前线程产生的异常,然后在processAll()方法中进行异常捕获和事务的回滚。但是,如果使用多个线程异步进行操作,当产生异常时,由于存在多个线程,异常并不会立即传递到主线程中,导致无法立即执行事务的回滚操作。因此,需要在出现异常情况时,通过适当的方式捕获异常,控制事务的回滚。需要注意的是,在使用ThreadLocal记录异常时,需要在处理完线程任务后及时清理ThreadLocal,否则可能会导致线程重用时异常信息泄露的问题。

2023-05-06 15:27:21 2715 2

原创 Vue 报错error:0308010C:digital envelope routines::unsupported

出现这个错误是因为 node.js V17版本中发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响.

2023-04-17 10:47:06 424

原创 SpringMVC中@ModelAttribute和@RequestBody的区别

1.SpringMVC中@ModelAttribute和@RequestBody的区别2.@ModelAttribute注解的使用案例

2023-04-11 11:45:37 716

原创 IDEA-Translation插件更新TKK失败

解决idea Translation插件更新TTK失败的问题

2022-10-11 17:30:06 426

原创 Docker部署Nginx(五)

Docker Hub 地址:https://hub.docker.com/Nginx镜像地址:https://hub.docker.com/_/nginx1、搜索 Nginx 镜像[root@localhost home]# docker search nginxNAME DESCRIPTION STARS OF

2022-05-05 02:59:26 2128

原创 Docker的常用命令(四)

一、帮助命令帮助文档的地址:https://docs.docker.com/reference/[root@localhost ~]# docker version # 显示docker的版本信息[root@localhost ~]# docker info # 显示docker的系统信息,包括镜像和容器的数量[root@localhost ~]# docker --help # 帮助命令二、镜像命令镜像命令的地址:https://docs.docker.com/engine/r

2022-05-05 00:27:38 874

原创 Docker的底层原理(三)

1、Docker的run流程:2、Docker 的工作原理Docker 是一个 Client-Server 结构的系统,Docker 的守护进程运行在主机上。通过 Socket 从客户端访问。DockerServer 接收到 Docker-Client 的指令,就会执行这个命令。3、Docker比虚拟机(VM)快的原因Docker 有着比虚拟机更少的抽象层Docker 利用的是宿主机的内核,vm需要的是 Guest OS所以说,新建一个容器的时候,docker不需要像虚拟机一样重新加载一

2022-05-04 23:56:52 689

原创 Docker的阿里云服务器加速(二)

CentOS配置:1、创建一个目录[root@localhost ~]# sudo mkdir -p /etc/docker2、编写配置文件[root@localhost ~]# sudo tee /etc/docker/daemon.json <<-'EOF'{ "registry-mirrors": ["https://qiyb9988.mirror.aliyuncs.com"]}EOF3、重启docker[root@localhost ~]# sudo sy

2022-05-04 23:54:00 794

原创 Docker的安装、卸载(一)

一、Docker的基本组成镜像(image):docker镜像就好比是一个模板,可以通过这个模板来创建容器服务。容器(container):Docker利用容器技术,独立运行一个或者一组应用。通过镜像来创建。启动,停止,删除,基本命令。是一个简易的Linux系统。仓库(repository):仓库就是存放镜像的地方。仓库分为公有仓库和私有仓库。二、安装Docker官方文档地址:https://docs.docker.com/engine/install/centos/1、Docker

2022-05-04 09:23:41 464

原创 Maven聚合工程搭建Springboot项目

众所周知,maven可以管理项目依赖,但很多人忽视了maven的另一项重要功能——使用maven搭建聚合工程。这里使用maven搭建一个springboot的聚合工程作为案例,整合Lombok、Spring MVC、Druid、Mybatis。

2022-01-20 06:57:31 2908 1

原创 Linux(CentOS 7)安装JDK 1.8 并配置环境变量

阅读本文前首先要有一台CentOS 7服务器,在CentOS 7服务器上安装JDK 1.8,附带JDK 1.8 for Linux 官方下载地址。

2022-01-18 18:22:47 3758

原创 使用Xshell连接Virtual box本地虚拟机上的CentOS 7

手把手教学使用Xshell 6连接Virtual box本地虚拟机上的CentOS 7

2022-01-18 17:28:38 2650

原创 使用Virtual box安装CentOS 7

手把手教学使用Virtual box安装CentOS 7系统

2022-01-18 16:59:12 794 1

原创 使用HttpServletRequest获取ip地址和mac地址

import javax.servlet.http.HttpServletRequest;import java.net.InetAddress;import java.net.NetworkInterface;import java.net.UnknownHostException;/** * 常用获取客户端信息的工具 */public class NetworkUtil { /** * 获取ip地址 */ public static String g

2021-12-24 21:01:36 4336 2

原创 Java接口

什么是接口?在Java编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。接口并不是类,编写接口的方式和类很类似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。除非实现接口的类是抽象类,否则要定义接口中的所有方法。接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。另外,在Java中,接口类型可用来声明一个变量,它们可以成为一个空指针,

2021-12-16 12:49:04 114

原创 Java多态

什么是多态?多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同的操作。多态性是对象多种表现形式的体现。当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误;如果有,再去调用子类的同名方法。多态的优点:消除类型之间的耦合关系可替换性可扩充性:可以使程序有良好的扩展。接口性:可以对所有类的对象进行通用处理。灵活性简化性多态存在的三个必要条件:继承重写父类引用指向子类对象:Parent p = new Child

2021-12-16 12:36:08 287

原创 Java封装

封装封装是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。封装可以被认为是一种保护屏障,防止该类的代码和数据被外部定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让源代码更容易理解与维护,也加强了源代码的安全性。封装的优点良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进行更精准的控制。隐藏信息,实现细节。实现Java封装的步骤修改

2021-12-16 12:30:41 487

原创 Java继承

继承的概念:继承就是子类承继父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。继承类型:Java不支持多继承,但支持多重继承。继承的特性:子类拥有父类非 private 的属性、方法。子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。子类可以用自己的方式实现父类的方法。Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 B 类继承 A 类,C 类继承 B 类,所以按照关系就

2021-12-16 12:27:05 286

原创 Java抽象类

抽象类抽象类不能被实例化,如果被实例化,就会报错,编译无法通过。只有抽象类的非抽象子类可以创建对象。抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象类。抽象类中的抽象方法只是声明,不包含方法体,就是不给出方法的具体实现也就是方法的具体功能。构造方法,类方法(用 static修饰的方法)不能声明为抽象方法。抽象类的子类必须给出抽象类中的抽象方法的具体实现,除非该子类也是抽象类。抽象方法:抽象方法只包含一个方法名,而没有方法体。抽象方法没有定义,方法名后面直接跟一个分号,而不是花括号。

2021-12-16 02:28:49 606

原创 Java自定义强密码校验

常用密码校验正则: // 必填数字、大小写字母,且至少8位 String regex = "^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,}$"; // 必填数字、字母、特殊字符,且以字母开头,至少8位以上 String strongRegex = "^(?![0-9]+$)(?![^0-9]+$)(?![a-zA-Z]+$)(?![^a-zA-Z]+$)(?![a-zA-Z0-9]+$)[a-zA-Z0-9\\S]{8,}$";但是这种正则通常不能

2021-12-07 18:31:13 1822

原创 Spring @bean 和 @component 注解有什么区别?

Spring @bean 和 @component 注解有什么区别?本文打算介绍几个不太容易说出其区别,或者用途的 Spring 注解,比如 @Component 与 @Bean 的比较,@ControllerAdvice 是如何处理自定义异常的等等。Spring 中的一些注解1. @Component 和 @Bean 的区别是什么?作用对象不同:@Component 注解作用于类,而 @Bean 注解作用于方法@Component 通常是通过路径扫描来自动侦测以及自动装配到 Spring 容器

2021-11-04 14:32:09 141

markdown配套文件,使用前先解压

将解压后的文件放在与.exe平级目录即可完成。

2023-06-13

springboot的maven聚合工程

1.maven聚合工程,父工程统一管理依赖版本 2.分模块设计,模块之间通过jar包的方式互相引用 3.基于springboot框架 4.整合了Lombok、Spring MVC、Druid、Mybatis、MySQL

2022-01-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除