自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mysql用户权限分配详解

MySQL权限介绍,MySQL权限级别分析,权限级别分为全局级别、数据层级别、表层级、子程序级别。MySQL权限分配顺序解析,实战分配MySQL用户权限,新建、删除、禁用、启动MySQL用户,重置MySQL用户密码,给MySQL用户授权、撤销权限,MySQL Grant授予用户权限,Revoke撤销用户权限。

2023-03-22 22:25:31 12246

原创 SpringBoot实现国际化

SpringBoot提供了il8n国际,其原理是将配置的各个语言资源文件信息,以Map的形式进行缓存。当前端请求给定某个语言标识时(一般是放到请求头中),拿去指定的语言标识去获取响应的响应信息。在Springboot项目启动时,由类进行消息资源自动配置。该类存在条件注解,也就是说必须满足某个条件是才会进行自动装载配置。类用于判断是否满足自动注入条件。用于返回一个对象,用于后续判断是否满足自动注入条件。该方法会自动读取配置的资源文件地址信息,通过方法获取默认的文件资源。如果该资源不存在,则不满足自动注入条件。

2025-01-09 11:30:53 1333

原创 Mybatis控制台打印SQL执行信息(执行方法、执行SQL、执行时间)

SQL性能监控是一个程序必要的功能,通常我们可以使用数据库自带的客户端工具进行SQL性能分析。然而对于一些专业度不高的人员来说,当程序出现卡顿或者响应速度变慢时,排查问题变得困难。当程序出现卡顿,通常通过检查服务器磁盘使用情况、程序内存大小,网络带宽以及数据库I/O等方面进行问题排查。然而数据库I/O打高的情况通常是由于SQL执行效率过低导致的。一般项目制的公司都有属于自己的实施人员,然而要让实施人员去排查具体SQL执行过慢问题,这显然对于专业度不高的工作人员来说是一种挑战和煎熬。

2024-11-26 14:46:54 1336 1

原创 cpolar-免费的内网穿透工具

cpolar免费的内网穿透工具,可以将您的内网站点发布至公网,以方便给客户提供演示,高效调试微信公众号、小程序、对接支付宝网关等云端服务,提高您的编程效率。cpolar官网。

2024-11-06 14:24:02 2008

原创 MySQL高性能核心参数配置

MySQL高性能核心参数配置,讲解MYSQL中核心参数innodb_buffer_pool_size、max_connections、thread_cache_size、innodb_flush_method、innodb_io_capacity、tmp_table_size、join_buffer_size的使用与配置,提高MYSQL使用性能。

2024-10-12 15:42:41 1039 2

原创 ElasticSearch7.8下载、安装教程

ElasticSearch下载,安装教程,kibana的Windows下载、安装教程。安装前,请检查电脑是否已经安装好node环境和JDK环境。

2024-09-09 13:47:38 1605 2

原创 How Tomcat Works 第一章 - 了解HTTP、Socket、ServerSocket构建简单的 Web 服务器

本章主要是对第一章内容进行归纳,了解一个简单的HTTP服务器是如何运行,以及尝试搭建一个简单的服务器,所需要java.net里面的Socket和类的基本运用。在了解Socket和之后,手动简单搭建一个最基础的HTTP服务器。

2024-08-06 22:03:01 941

原创 JAVA接口数据校验代码规范

层的代码侵入就会变的极小,业务代码也会变的更加清晰,这跟技术并无关联,而是一种解决方法的思路。接口数据校验基本上是每个系统必须做的事情,后端服务永远不要将数据校验寄托于前端页面的校验。当一个接口确定对外暴露时,就表明这个接口存在一定的风险点,除了需要对请求者身份的校验,更应该对接口参数进行校验。更佳的处理方法就是将参数校验这一部分的功能移至参数对象本身,也叫做自检。这还是参数较少的情况,如果一个接口需要校验的参数有几十个,那么。用于收集参数校验的错误信息,当某个参数校验不过时,则会调用。

2024-07-31 13:31:14 1036

原创 JAVA并发编程【Semaphore】源码解析

Semaphore翻译过来的意思是信号、信号量。该类的主要作用是用于限制线程访问共享资源的数量。通俗一点来说,就是起到限流的作用。比如我们最常见的接口限流:当我们对外暴露一个接口时,应该对该接口的最大并行数进行控制。而Semaphore正好可以控制线程访问共享资源的数量,因此在单机部署的情况下,可以使用Semaphore来处理接口限流。synchronized关键字想必大家并不会感到陌生,synchronized可以控制共享资源同时只能被一个线程访问,而Semaphore更像是synchronized的升级

2024-06-24 16:30:37 778 1

原创 MySQL定时任务Event详解

MySQL定时任务EVENT事件如何配置详解 。MySQL使用定时任务清除日志。Event实现循环调度和单次任务执行。

2024-03-22 11:21:20 3300 1

原创 SpringBoot ApplicationListener实现发布订阅模式

发布订阅模式()通常又称观察者模式,它被广泛应用于事件驱动架构中。即一个事件的发布,该行为会通过同步或者异步的方式告知给订阅该事件的订阅者。JDK中提供了作为所有订阅者的接口规范(即所有的订阅者都应该实现该接口),而则作为所有事件发布者的实现规范(即所有事件发布者都应该继承该类)。对于观察者的原理不是本章讨论的重点,本章只是演示如何在SpringBoot中实现发布订阅模式。

2024-03-18 22:53:17 1409 1

原创 MySQL连接数不足导致服务异常GetConnectionTimeoutException

MySQL连接数不足导致服务异常GetConnectionTimeoutException,设置MySQL最大连接数配置,show processlist参数

2024-03-18 15:38:27 3456

原创 Openfeign使用教程(带你快速体验Openfeign的便捷)

OpenFeign是一个基于Spring的声明式、模板化的HTTP客户端,它简化了编写Web服务客户端的过程。用户只需创建一个接口并添加相应的注解,即可实现对远程服务的调用。OpenFeign是的一部分,它支持Spring MVC的注解,如,使得使用 HTTP 请求访问远程服务就像调用本地方法一样直观和易于维护。Openfeign底层默认使用JDK提供的进行通信(源码参考类feign.Default),使用Openfeign可以快速的帮我们完成第三方接口调用的实现,简化开发流程。feign的客户端需要使用。

2024-03-16 16:57:16 10325 1

原创 Docker安装RocketMQ

Docker安装RocketMQ nameserve,broker安装。Linux安装rocetmq,安装rocketmq可视化界面rocketmq-console

2024-02-20 14:03:57 10863 33

原创 深度解析ScheduledThreadPoolExecutor源码之ScheduledFutureTask

深度解析ScheduledThreadPoolExecutor核心类ScheduledFutureTask的实现原理,了解ScheduledFutureTask和FutureTask实现流程。ScheduledFutureTask计算任务执行时间,定时任务实现原理。

2024-02-05 16:04:44 1001

原创 深度解析ScheduledThreadPoolExecutor源码之DelayedWorkQueue

深度解析ScheduledThreadPoolExecutor源码之DelayedWorkQueue,二叉堆插入元素、删除元素、构建二叉堆操作。DelayedWorkQueue中siftUp上浮、siftDown下沉代码实现。

2024-02-02 10:59:18 1055

原创 Java中的Future源码讲解

在使用JAVA语言开发系统中,使用异步任务是很常见的,比如:文件导入、导出;定时任务;大批量数据运算;日志记录等。这些操作可能会经过复杂的业务处理以至于花费较长的时间。通常来说,这些需要通过长时间的处理流程,我们都会采用异步进行处理,而不是让客户在前端一直等待直至处理完成。所谓异步,简单而言就是开启一个新线程,将这些复杂运算放入新线程中进行处理。Thread是JAVA中的线程对象,它实现了Runnable接口,如果要开启一个新的线程,那么就必须创建一个Thread对象,调用start方法。

2023-12-04 16:05:42 477

原创 深度了解LinkedBlockingQueue底层实现原理

队列(Queue)是一种很常见的数据结构,本章将用常见的阻塞队列LinkedBlockingQueue进行源码讲解,深度带你了解LinkedBlockingQueue整个实现逻辑。解析LinkedBlockingQueue中signalNotEmpty、signalNotFull、enqueue、dequeue、put、offer、take、poll等函数的源码实现。掌握LinkedBlockingQueue其底层的设计思路和代码实现

2023-11-21 14:25:49 438

原创 Mysql5.7(Docker环境)实现主从复制

MySQL5.7主从配置,Dokcer实现Mysql5.7主从。为什么要使用数据主从?MySQL主从原理,Relay Log中继日志,Bin Log日志原理。MySQL5.7配置参数解释。

2023-09-11 13:15:52 1160 4

原创 Stream流List转Map报错Duplicate key StreamMap

JDK8引入了Stream流,让程序员在开发中更方便进行集合之间的转换,在使用Stream流将List转为Map时,如果Map的key有重复的情况下,就会抛出java.lang.IllegalStateException: Duplicate key StreamMap这个异常。这个坑是不太容易被发现的,解决方法也非常简单,只需要在List转Map的时候指定,如果出现重复的Key,那么以哪个为最终的结果放入Map。

2023-07-23 14:17:59 1125

原创 IDEA拉取项目发现pom在文件上方

IDEA pom文件在上方,src在pom下面

2023-03-05 21:39:01 1024

原创 Docker Log使用

查看docker日志通常会使用到docker log指令,可以通过指令来查看docker log提供的功能:Options(可选参数):–details 显示更多详细的信息-f, --follow 跟踪实时日志–since string 显示自某个(时间)timestamp之后的日志,或相对时间,如42m(即42分钟)–tail string 显示日志末尾后N行, 默认是全部显示-t, --timestamps 在每行日志前加上。

2023-03-05 21:24:56 7891

原创 Mybatis JdbcType与数据库类型之间的对应关系图

JAVA Mybatls中JdbcType数据类型对应关系,Mybatis数据类型转换为Mysql数据类型,Mybatis数据类型转Oracle数据类型。Myatis JdbcType与数据库类型对应关系图。

2023-02-19 22:30:03 665

原创 Redis常用指令以及在AVA中的使用

Redis常用指令以及在AVA中的使用,Redis常用指令以及操作。Redis数据类型以及使用,Redis在JAVA中的常用操作,什么是Redis?Redis中各种数据类型详解。

2022-11-20 22:10:39 735

原创 UML建模工具Astah Pro教程

UML建模工具Astah Pro 8教程Astah教程

2022-11-06 23:29:06 7523 9

原创 windows系统关闭指定端口

解决Address already in use问题,Windows关闭指定端口进程

2022-11-06 21:56:17 15512 1

原创 SpringMVC执行流程(源码分析)

SpringMVC大体流程,请求URL如何与HandlerMethod对应?AbstractHandlerMethodMapping初始化HandlerMethod。源码分析AbstractHandlerMethodMapping初始化HandlerMethod流程。一个请求到SpringMVC的完整流程,DispatcherServlet如何接收用户请求?分析DispatchServlet.doDispatch方法如何处理请求

2022-10-16 21:51:37 2499 2

原创 Spring Data JPA 基本使用

Spring Data JPA是什么?SpringBoot 配置JPASpring整合 JPAJPA基本配置JPA中的Repository的使用JPA实现分页查询JPA实现审计功能JPA使用Specification实现复杂查询JPA使用注解查询@query

2022-09-04 17:20:15 1193

原创 MySQL中的DDL常规操作总结

MySQL中的DDL常规操作总结,MYSQL修改表字段,MYSQL删除表字段,MYSQL增加表字段。MYSQL给表增加索引。MYSQL查看表索引,MYSQL删除某列索引,MYSQL修改字段名称,MYSQL修改字段类型。

2022-08-08 23:40:04 1592

原创 Linux下用base64命令加解密字符串

Linux下用base64命令加解密字符串linux系统base64加密算法,linux, base64加密解密

2022-07-24 21:39:28 13824

原创 JAVA删除文件或者文件夹

JAVA删除文件或者文件夹JAVA如何删除不为空的文件夹JAVA删除指定文件下所有文件Files.walkFileTree的用法FileVisitResult用法

2022-07-17 20:59:32 25742 1

原创 JAVA实现文件压缩和解压,解决Java原生压缩组件不支持中文文件名的问题

JAVA实现文件压缩和解压。解决Java原生压缩组件不支持中文文件名的问题。ZIPOutputStream压缩和解压失败。ZIPOutputStream压缩和解压出现乱码。ZIPOutputStream无法压缩中文文件,ZIPOutputStream解压中文文件乱码。ZIPOutputStream解决中文乱码问题。......

2022-07-07 00:03:08 3025

原创 SpringMVC文件上传功能实现

SpringMVC文件上传功能实现,SpringBoot文件上传,MultipartFile使用,以及MultipartHttpServletRequest获取上传文件内容。SpringBoot配置上传文件大小。

2022-06-15 22:04:50 4490

原创 Column count doesn’t match value count at row 1

Column count doesn’t match value count at row 1Mybatis批量插入数据报Column count doesn’t match value count at row 1Mybatis使用foreach插入数据报错

2022-05-30 22:54:11 619

原创 BeanUtils工具类

BeanUtils工具类实现BeanUtils.copyProperties的使用JAVA对象转换

2022-05-30 22:26:06 565

原创 Liunx下使用SSH登录远程服务器

Liunx下使用SSH登录远程服务器Liunx使用秘钥文件登录

2022-05-22 16:31:12 2736

原创 MYSQL插入、查询区分大小写

MYSQL插入查询区分大小写MYSQL唯一索引区分大小写BINARY实现查询区分大小写

2022-05-21 16:49:40 1142

原创 RestTemplate转发MultipartFile

RestTemplate转发MultipartFile文件

2022-05-08 22:22:47 2230 4

原创 Maven快照更新策略

Maven快照策略,什么是Maven快照。快照版本与Realse版本的区别。修改Maven快照拉取策略。Maven拉取策略

2022-05-03 17:32:26 3450 3

原创 Pod创建多个容器并访问指定容器

pod创建多个容器,查看pod中多个容器信息,k8s创建Pod

2022-05-02 20:04:09 4948

空空如也

空空如也

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

TA关注的人

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