自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 收藏
  • 关注

原创 通用下拉接口设计

在前后端交互的时候,规范是采用对象进行传参的,但是在实际开发中参数是可变的,利用Map对参数进行键值对的方式存储在一定成程度上能增加参数传输的自由度,故需要将对象转成map处理。在实际开发过程中,同一模块功能尽量统一书写规范,在增加代码规范性,可读性,复用性的同时,还方便前后端进行联调工作。5.下拉接口service层实现。4.下拉接口service层。

2025-01-21 10:39:23 258 1

原创 记录java常用方法

1.取两个集合的差集。

2025-01-21 09:51:28 409

原创 解决ChatGPT 学术优化 3.44配置域名遇到的Connection error out问题

ChatGPT 学术优化配置域名遇到的代理问题

2023-07-16 14:00:36 856

原创 使用JsonNode处理树形数据结构问题

利用JsonNode解析树形的数据结构

2023-05-18 16:29:36 660

原创 解决RedisTemplate 使用 setIfAbsent 做分布式锁出现返回值为 null 的问题

分布式事务问题

2023-05-18 15:54:55 2517 1

原创 设置idea启动内存参数

idea启动参数配置,解决idea打开项目过多造成的卡顿问题

2023-01-27 20:39:16 12776

原创 开启控制台输出mybatis执行的sql日志

开启mybatis log配置

2022-12-11 11:51:49 1989

原创 将主键ID用括号包括 以字符串的方式进行存储 查询的技巧

以字符串存储多个ID进行查询的技巧

2022-12-04 11:56:49 813

原创 截取文件名前面的章节数字

Java实现章节排序

2022-08-13 10:16:57 245

原创 Excel基础

Excel基础

2022-07-09 22:58:42 821

原创 idea 规范操作,设置代码行宽,并自动到达行宽后自动换行

idea基本设置

2022-07-08 17:25:03 11599 4

原创 File 与 MultipartFile概述

FIle与MultipartFile概述

2022-06-26 18:13:15 31851

原创 Mybatis对Double类型的字符串进行范围查询

mybatis动态sql

2022-06-19 07:25:08 680

原创 使用LocalDateTime和LocalDate替换SimpleDateFormat

时间格式转换

2022-06-13 00:15:07 870

原创 文件基本操作,递归获取指定目录下的文件

File使用

2022-06-11 22:34:05 598

原创 map初始化参数写法

map初始化

2022-06-11 21:38:11 378

原创 List.isEmpty()与CollectionUtils.isEmpty的区别

List集合判空

2022-06-11 19:32:38 2088

原创 File对象中创建文件夹的方法mkdir与mkdirs的区别

File创建文件夹方法概述

2022-06-11 17:23:40 2630

原创 idea 2020.1版本设置光标自动缩进到到代码输入位置

idea基本设置

2022-06-11 16:43:41 1244

原创 idea2020.1设置鼠标滚轮控制字体大小

idea设置

2022-06-11 16:07:35 224

原创 解决idea超过5个相同包的时候自动变成*的问题

解决同包类自动用*号代替的问题

2022-06-10 09:35:33 1786

原创 添加git的快捷图标到右上角的菜单栏中

git菜单栏快捷图标设置

2022-06-05 10:07:50 6765

原创 时间格式转换

1.使用LocalDateTime将字符串时间转化为指定格式的时间,同时计算与当前时间年,月,日时,分,秒,毫秒的差值 public static void main(String[] args) { public static void main(String[] args) { String startTime = "2021-05-13 12:21:12"; DateTimeFormatter targetFormat = DateTimeFormatter.of

2022-05-14 14:54:42 2392

原创 使用BufferReader与BufferWriter读写文件

BufferReader与BufferWriter简介BufferReader与BufferWriter自JDK1.1就已经存在了.BufferReader的作用是从字符输入流读取文本字符到字符缓冲区中,以便提供对字符、数组和行的高效读取.BufferWriter的作用是将文本写入字符输出流到字符缓冲区,以便提供对单个字符、数组和字符串的有效写入.在操作文件时,为了获得最高效率,一般考虑在BufferReader,BufferedWriter中包装OutputStreamWriter,以避免频繁调用

2022-05-08 18:58:52 6780

原创 线程池体系结构

线程池的组成1.线程池管理器:用于创建并管理线程池2.工作线程:线程池中的线程3.任务接口:每个任务必须实现的接口,用于工作线程调度其运行4.任务队列:用于存放待处理的任务,提供一种缓冲机制Java中的线程池是通过Executor框架实现的,该框架用到了Executor,Executors,ExecutorService,ThreadPoolExecutor,Callable和Future,FutureTask这几个类.关于这几个类之间实现关系的UML图:线程池的体系架构 java.uti

2022-05-07 17:56:19 680

原创 SpringBoot整合redis实现发布订阅模式

Redis的发布订阅模式发布订阅(Pub/Sub):目前广泛使用的通信模型,它采用事件作为基本的通信机制,提供大规模系统所要求的松散耦合的交互模式:订阅者(如客户端)以事件订阅的方式表达出它有兴趣接收的一个事件或一类事件;发布者(如服务器)可将订阅者感兴趣的事件随时通知相关订阅者,其就是基于观察者模式设计的.适用场景(1).优惠券到期到期失效(2).微信粉丝关注公众号(3).消息及时通讯(redis不像中间件一样对发布消息进行缓存,确认,重试等机制)redis发布订阅模式案例1.先创建订阅者,

2022-04-15 13:51:46 8374 5

原创 按装完Mysql后,一顿操作后,在dos窗口下不需要密码就能登陆,但是客户端工具登陆不上

最近安装最新的mysql8.0的过程中,最后一步安装居然失败了,进入lLog中查看失败提示如下:MySQL error 1042: Unable to connect to any of the specified MySQL hosts.安装失败的界面提示失败在Starting the server这一步。解决方法:这里提供最简单易行的解决方案,win+r打开运行,输入services.msc打开服务,找到安装MySQL时添加的服务名,一般8.0版本的MySQL默认是MySQL80,双击打开,登

2022-01-22 14:37:10 1039

原创 解决Mysql安装出错

最近想换一个高级一点版本的mysql玩玩,就把旧版本的mysql卸载了,话说卸载mysql是一件冒险的事情。相信很多小伙伴们也经历过mysql安装失败后尝试无果后,产生卸载mysql后重新安装mysql的念头,尝试卸载后发现无法卸载干劲,然后呢卸载不干净就无法重新安装mysql,陷入了无穷无尽的死循环。这时候会刷系统的小伙伴或许还有江湖救急的手段,删不干净是吧,我干脆直接换系统牛逼吧,啥都给你清除了还不行嘛,话说这种做法确实很有效哈,不过仅仅是为了装一个mysql而破坏掉我们配置的其他的开发环境,就是商敌一

2022-01-22 14:10:51 4264 1

原创 idea如何设置ctrl加鼠标改变字体大小

最近想截图源码,发现通过打开设置来回调整字体麻烦,就改了一下设置,通过按ctrl+鼠标的上下滚动来控制文本字体的大小此处随手记录一下,希望对后来的小伙伴有用。首先使用快捷键ctrl+alt+s打开设置的主界面,然后点击一级菜单Keymap,在右侧展现界面的搜索区域搜索Decrease Font Size如下图所示,然后鼠标双击或者右击Decrease Front Size所在行弹出的弹窗中选择第二项Add Mouse Shortcut进行对应按键设置即可。![在这里插入图片描述](https://i

2022-01-15 14:55:14 974

原创 Idea常用快捷键

Idea的继承了各种编程语言的开发环境,同时支持各种快捷工具方便开发。使用Idea开发的过程中如若熟练使用各种快捷加操作,那么对于我们开发代码将是如虎添翼的一件事情,此处开始慢慢总结一些我们平时开发常用的快捷键,方便大家学习记忆。搜索类型的快捷键搜索任意格式的文件,连续双击shift(当然ctrl+r也可以实现全局搜索任意格式文件的功能)搜索指定的类,接口,抽象类,枚举类型ctrl+n搜索文件ctrl+shift+n搜索指定的变量和方法ctrl+shift+alt+n打开Actions搜

2022-01-11 21:35:30 1005

原创 SpringBoot项目开启热部署功能

springboot提供了热部署功能,在我们修改了代码进行保存后,程序会自动帮我们将修改的代码进行编译运行。1.热部署需要导入的pom文件<!--devtools依赖jar包--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope&gt

2022-01-09 22:52:35 377

原创 使用JSONObject需要导入fastjson的pom文件

FastJSON是一个Java语言编写的高性能,功能完善,完全支持http://json.org的标准的JSON库。JSONObject继承于JSON,并且实现了Map接口,因此JSONObject拥有JSON和Map中所有的方法,JSONObject提供了各种方法,可以轻松的实现不同数据对象之间的转换。在pom.xml文件加入以下依赖,即可使用JSONObject。<dependency> <groupId>com.alibaba</group

2021-11-18 15:08:59 6604

原创 在docker中创建并运行一个MySql容器,并将宿主机直接挂载到容器

由于在windows上安装mysql后嫌卸载麻烦,直接在docker上运行一个mysql来满足开发使用,此处记录一下安装步骤。1.首先访问DockerHub下载对应版本的mysql(我下的是5.7.25这个版本的)。2.将下载好的mysql.tar文件上传到虚拟机(我是上传到/opt/mysql/目录下),通过load命令加载为镜像。docker load -i mysql.tar3.分别创建目录/opt/mysql/data,创建目录/opt/mysql/conf在conf目录下创建文件ms.

2021-11-10 10:21:18 3359

原创 Spring设置对象为多列

Spring容器默认创建的是单列对象Spring创建对象的过程是交由Spring的IOC容器进行对象的创建和管理的,其默认创建对象的方式是采用无参构造创建对象。在Spring容器里默认只实例化出一个bean,后续的请求都公用这个对象,这个对象会保存在一个map里面 。当有请求来的时候会先从缓存map里查看有没有,有的话直接使用这个对象,没有的话才实例化一个新的对象,所以这是个单例的。但是对于原型(prototype)bean来说当每次请求来的时候直接实例化新的bean,没有缓存以及从缓存查的过程。设置S

2021-10-24 22:09:01 1794

原创 通过实现AutoCloseable接口实现资源连接的关闭

自动关闭资源连接的好处在Java开发过程中,按照正常的设计开发的结构来讲,大部分程序应该是面向接口的开发,应该在接口里面提供所有的核心业务的功能,但是像及时释放连接资源的操作属于非核心业务功能。每次手工调用close()关闭资源过于繁琐,所以最佳做法是通过某种机制自动实现关闭处理。AutoCloseable接口简介在JDK1.7版本中提供了一个新的接口AutoCloseable,AutoCloseable接口中只有一个close方法。这种自动关闭的处理机制是需要有其特定的运行条件,必须结合异常处理才可

2021-10-23 11:51:28 672

原创 RabbitMQ简介

1.什么是消息队列消息队列,即MQ,Message Queue。消息队列是典型的:生产者、消费者模型。生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,这样就实现了生产者和消费者的解耦。2.消息通信模型MQ是消息通信的模型,并不是具体实现。现在实现MQ的有两种主流方式:AMQP、JMS。两者之间的区别:(1)JMS是定义了统一的接口,来对消息操作进行统一;AMQP是通过规定协议来统一数据交互的格式(2)

2021-10-22 15:55:18 857

原创 java中asList的使用

asList概述Java中的asList方法是数组工具类 Arrays中的一个静态方法,Arrays.asList()方法的作用是将数组或一些元素转为集合,asList方法返回值得到的集合并不是我们通常使用的List集合,asList()方法把数组转换成集合时,不能使用其修改集合相关的方法,如果使用修改集合相关的方法add/remove/clear方法会抛出java.lang.UnsupportedOperationException的异常。1.使用asList方法返回的对象调用add/remove/c

2021-10-19 10:17:14 19388 3

原创 Linux配置全局环境变量

Linux配置全局环境变量的作用跟在Windos环境下配置环境变量一样,对应的工具在配置完环境变量后,在任意目录下均可以访问对应工具的功能,所以为工具配置环境变量可以让我们随处使用配置好了环境变量的工具,为开发带来便捷。一.在/etc/目录下的profile文件中设置环境变量1.打开/etc/目录下的profile文件。vim /etc/profile2.配置nginx的全局环境变量。二.在/root/目录下的.bashrc文件中设置环境变量1.打开/root/目录下的.bashrc文件。

2021-10-18 14:32:28 8926

原创 修改Git用户信息及本地分支与远程分支的相关的操作

1.查看Git配置信息git config –list2.修改用户名和邮箱#修改用户名git config --global user.name "chenjl"#修改邮箱git config --global user.email "123@qq.com"Linux系统用户可以在根目录下看到的.gitconfig文件里面看到用户信息,Windos系统用户可以在C:\Users\admin路径下的.gitconfig文件里面看到用户信息。3.Git 项目与Gitee的仓库进行关联git

2021-10-13 14:47:47 553

原创 Git账号配置

添加Git账号配置后,我们就可以轻松方便的与远程Git仓库进行交互。我们一般使用ssh的协议下载git代码库,可以减少重复的认证。ssh配置方式1.使用git bash客户端,执行ssh-keygen -t rsa命令,一直按回车即可。2.进入.ssh目录下获取执行ssh-keygen -t rsa命令成功生成的公钥,上传到我们的远程Git仓库的公钥管理中即可。(1)执行cd ~/.ssh命令进入.ssh目录。(2)输入ls查看.ssh目录结构。(3)输入cat id_rsa.pub命令获取i

2021-10-13 10:07:41 3692

空空如也

空空如也

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

TA关注的人

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