随笔分类 -  JAVA

摘要:一、ThreadPoolTaskExecutor 本文采用 Executors 的工厂方法进行配置。 1、将线程池用到的参数定义到配置文件中 在项目的 resources 目录下创建 executor.properties 文件,并添加如下配置: # 异步线程配置 # 核心线程数 async.exe 阅读全文
posted @ 2022-08-30 13:35 liftsail
摘要:一、ThreadPoolExecutorThreadPoolExecutor是JDK中的线程池类,实现了Executor接口。 顾名思义,Executor 是一个专门用来处理多线程工作的接口,所有多线程处理相关的类都实现了这个接口。线程池主要提供一个线程队列,队列中保存着所有等待状态的线程,降低了线 阅读全文
posted @ 2022-08-30 13:33 liftsail
摘要:一、问题描述 最近在和前端对接接口的时候,发现后端接口返回给前端的一个字段大小写有问题,具体如下。 使用的开发框架及版本: 框架:SpringMVC;Lombok版本:1.18.12; 对象简化后如下: @Data public class MobileInfo { private String i 阅读全文
posted @ 2022-08-29 10:13 liftsail
摘要:返回给前端的Json对象中有很多字段没有值,就会有很多的null值(如下图) 前端判断处理会比较麻烦,所以打算在后端回传数据时做一下处理: 1、字符串null值置为空字符串 2、空List转为[] 3、封装数字类型null转为0 4、Boolean类型null转为false 先看想要达到的效果: 一 阅读全文
posted @ 2022-08-09 15:55 liftsail
摘要:一、需求与前言springBoot框架项目,有时候有预加载数据需求——提前加载到缓存中或类的属性中,并且希望执行操作的时间是在容器启动末尾时间执行操作。针对这种场景,SpringBoot提供了两个接口,分别是CommandLineRunner和ApplicationRunner。两个接口都在spri 阅读全文
posted @ 2022-08-06 17:16 liftsail
摘要:1.工具类 import com.aliyun.dysmsapi20170525.Client;import com.aliyun.dysmsapi20170525.models.*;import com.aliyun.teaopenapi.models.Config;import com.aliy 阅读全文
posted @ 2022-08-05 13:31 liftsail
摘要:一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程: Workspace:工作区Index / Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央 阅读全文
posted @ 2022-08-03 17:19 liftsail
摘要:工具类文件一 敏感词的初始化package com.education.utils;import org.springframework.data.redis.core.RedisTemplate;import javax.annotation.Resource;import java.io.Buf 阅读全文
posted @ 2022-08-02 14:50 liftsail
摘要:第一种 List<String> list = Arrays.asList("a","b","c"); //注意防止空指针 System.out.println(StringUtils.strip(list.toString(),"[]")); 第二种 List<String> list = Arr 阅读全文
posted @ 2022-08-01 11:25 liftsail
摘要:首先引入依赖包,这里使用的是alibaba的fastjson; <!-- fastjson依赖 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.76</ver 阅读全文
posted @ 2022-07-16 15:20 liftsail
摘要:引言 在解决这个问题之前,首先简单了解一下关于参数传递的相关概念: 形式参数和实际参数 值传递和引用传递 1、形式参数 形式参数是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数。 2、实际参数 在调用有参函数时,主调函数和被调函数之间有数据传递关系。在主调函数中调用一个函 阅读全文
posted @ 2022-07-13 11:53 liftsail
摘要:工具类 package com.education.utils;import java.io.Serializable;import java.util.List;import java.util.stream.Collectors;/** * <b> 分页通用类 </b> * * @param < 阅读全文
posted @ 2022-07-01 17:42 liftsail
摘要:配置属性 //设置好账号的ACCESS_KEY和SECRET_KEYstatic final String ACCESS_KEY = "";static final String SECRET_KEY = "";//要上传的空间static final String BUCKET_NAME = "" 阅读全文
posted @ 2022-06-21 16:31 liftsail
摘要:Java命名规范 建议遵守(不遵守也可通过编译) 1.包名:多单词组成时所有字每都小写:xxxyyyzzz2.类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz(大驼峰命名法)3.变量名、方法名:多单词组成时,第一个字母的首字母小写,第二个字母开始每个字母首字母大写:xxxYyyZ 阅读全文
posted @ 2022-06-16 11:50 liftsail
摘要:结论:isNotEmpty(str)等价于 str != null && str.length > 0isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length > 0isEmpty 等价于 str == null | 阅读全文
posted @ 2022-05-18 11:47 liftsail
摘要:MD5和BASE64 1.MD5: 全称为message digest algorithm 5(信息摘要算法), 可以进行加密, 但是不能解密, 属于单向加密, 通常用于文件校验Base64: 把任意序列的8为字节描述为一种不易为人识别的形式, 通常用于邮件、http加密. 登陆的用户名和密码字段通 阅读全文
posted @ 2022-05-18 10:22 liftsail
摘要:前言io流用到的地方很多,就比如上传下载,传输,设计模式等....基础打扎实了,才能玩更高端的。 在博主认为真正懂IO流的优秀程序员每次在使用IO流之前都会明确分析如下四点: (1)明确要操作的数据是数据源还是数据目的(也就是要读还是要写)(2)明确要操作的设备上的数据是字节还是文本(3)明确数据所 阅读全文
posted @ 2022-04-01 15:08 liftsail