自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 GitHub爬虫项目详解

GitHub爬虫项目

2023-10-05 23:51:36 2112

原创 服务器安装mysql后无法远程连接

服务器安装mysql后无法远程连接

2023-09-29 16:14:03 724

原创 java调用js文件的两种方法(支持V8引擎)

java调用js文件的两种方法(支持V8引擎)

2023-09-05 17:11:17 1985 3

原创 java实现生成RSA公私钥、SHA256withRSA加密以及验证工具类

java实现生成RSA公私钥、SHA256withRSA加密以及验证工具类

2023-08-25 17:00:58 1828 1

原创 mybatis通配符(“%“,“_“)模糊查询、插入处理

Mybatis经常会使用like查询作为模糊匹配字符进行搜索匹配,但是对于"%“,”_"等特殊符号,会被识别成通配查询,插入的时候也会被识别成通配符,而导致插入失败,因此对于该类符号需要进行特殊处理。

2023-05-19 16:11:04 1391 1

原创 Spring Aop | 通过 @Aspect 实现日志切面,记录接口的请求体参数,返回参数

通过 @Aspect 实现日志切面,记录接口的请求体参数,返回参数

2023-04-04 15:28:42 1115

原创 Docker | 根据镜像查看其构建命令,启动脚本,端口等信息

Docker | 根据镜像查看其构建命令,启动脚本,端口等信息。

2023-03-16 10:33:22 665

原创 python | 傻瓜式一键搭建图片验证码识别接口

python | 傻瓜式一键搭建图片验证码识别接口

2023-02-24 09:37:14 2237

原创 java | 基于Redis的分布式锁实现②

java | 基于Redis的分布式锁实现

2023-02-20 08:42:18 123

原创 system.arraycopy() 参数详解

system.arraycopy() 参数详解

2023-02-15 11:14:42 792

原创 java | 基于Redis的分布式锁实现①

java | 基于Redis的分布式锁实现

2023-02-14 09:44:22 470

原创 缓存击穿,缓存雪崩,缓存穿透出现的原因及解决方案

缓存击穿,缓存雪崩,缓存穿透出现的原因及解决方案

2023-02-09 09:47:52 469

原创 java | RabbitTemplate消息模板发送消息收不到、队列不存在

RabbitTemplate发送消息时候,如果队列不存在,会收不到消息,也不报错

2023-01-10 17:07:28 1697 1

原创 java | 使用Cipher类实现AES所有常用加密模式

java | 使用Cipher类实现AES所有常用加密模式

2022-12-28 14:48:21 3535

原创 【java】opencv + Tesseract(tess4j) 实现图片处理验证码识别

java + opencv + Tesseract 实现图片验证码识别和训练

2022-12-22 17:23:05 3957 1

原创 【问题】 spring 使用@Autowire注解,调用的时候发现注入的对象是null

spring 使用@Autowire注解,调用的时候发现注入的对象是null。

2022-12-02 15:52:31 219

原创 Linux | find 命令 7 种用法

linux | find 命令7种用法

2022-10-24 09:36:22 2456

转载 Python | 获取本机IP地址的几种方式

Python获取本机IP地址的几种方式

2022-10-24 09:22:39 6490

原创 CentOS 安装配置 MySQL(完整简洁版)

CentOS安装MySQ最简洁版,以及可能遇到的问题解决方法

2022-03-09 09:47:37 3610

原创 CentOS下安装配置tomcat(绝对是最简洁版本)

CentOS下安装配置tomcat(绝对是最简洁版本)

2022-02-10 14:32:20 2044

原创 CentOS 安装配置 node.js

CentOS 安装配置 node.js详细全文

2022-01-10 16:16:31 782

原创 Centos7.X安装配置jdk/java环境

1.先查看本地是否自带java环境:yum list installed |grep java2.卸载自带的java(输入su,输入root超级管理员的密码,切换到root用户模式)yum -y remove java-1.8.0-openjdk* yum -y remove tzdata-java*3.查看yum仓库中的java安装包yum -y list java*4.安装java:yum -y install java-1.8.0-openjdk*5.查找Java安装路径

2022-01-05 16:39:06 397

原创 [Spring] @Valid 注解类型详解

@Valid注解可以实现数据的验证,你可以定义实体,在实体的属性上添加校验规则,而在API接收数据时添加@valid关键字,这时你的实体将会开启一个校验的功能@Valid 注解类型@Null\color{red}{@Null}@Null限制只能为null@NotNull\color{red}{@NotNull}@NotNull限制必须不为null@AssertFalse\color{red}{@AssertFalse}@AssertFalse限制必须为false@AssertTrue.

2021-12-20 09:07:22 860

原创 static作用

static方法:一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有this的,因为它不依附于任何对象,既然都没有对象,就谈不上this了。并且由于这个特性,在静态方法中不能访问类的非静态成员变量和非静态成员方法,因为非静态成员方法/变量都是必须依赖具体的对象才能够被调用。static变量:static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本【存放在方法区】,它当且仅当在类初次加载时会被初始化。而非..

2021-03-10 13:15:20 111

转载 同步与异步,阻塞与非阻塞区别

同步与异步,阻塞与非阻塞区别

2020-12-24 14:39:14 217

原创 Java程序初始化(类加载)顺序,内存区域详细解释

Java程序初始化(类加载)顺序,内存区域详细解释

2020-12-23 14:27:35 266

原创 java.lang.ExceptionInInitializerError,Caused by: org.apache.ibatis.exceptions.PersistenceException:

java.lang.ExceptionInInitializerError,Caused by: org.apache.ibatis.exceptions.PersistenceException:解决方法

2020-12-22 18:46:41 279

原创 java 线程池七个参数详解

ThreadPoolExecutor构造函数源码:public ThreadPoolExecutor( int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, ThreadFactory threadFactory, Rej

2020-12-21 09:41:21 724

原创 并发操作会带来哪些数据不一致性,简述TCP三次握手和四次挥手的过程

问题:并发操作会带来哪些数据不一致性(D )。A 丢失修改、不可重复读、脏读、死锁B 不可重复读、脏读、死锁C 丢失修改、脏读、死锁 D丢失修改、不可重复读、脏读并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏’夕数据。(l)丢失修改(lostupdate)两个事务Tl和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了)Tl提交的结果,导致Tl的修改被丢失。(2)不可重复读(Non一RepeatableRead)不可重复读是指事务Tl读取数据后,事务几执行更新操作,使.

2020-12-20 19:23:53 6017

原创 SpringAOP底层原理 - JDK 动态代理

回顾一下AOP相关概念SpringAOP的理解和底层原理补充引介(Introduction):特殊的增强,动态为类增加方法织入(Weaving):将增强加入到目标类的过程,织入分为三种时期编译器:AspectJ (上文讲过)类加载运行期:jdk动态代理(实现接口),CGlib(子类,不能用final)目标对象(Target):原始对象代理对象(Proxy):加入了增强的对象,是生成的;切面(Aspect):切点 + 增强本文要说的就是在运行期间织入的两种实现方式之 jdk动态代理

2020-12-18 15:46:47 232 1

原创 SpringAOP的理解和底层原理 - AspectJ静态代理

**AOP(Aspect-OrientedProgramming)**:面向切面编程。利用AOP可以对业务逻辑的各个部分进行隔离,从而是的业务逻辑各部分之间的耦合度降低,提高程序的可用性,同时提高了开发的效率。SpringAOP的理解和详细操作

2020-12-17 20:16:37 646

原创 Spring | 最全基础概念(适合所有人群)

目录Java Spring框架是什么?它有哪些好处?Spring体系结构Spring DI的实现方式Spring Bean的配置及常用属性Spring实例化Bean的三种方法1.构造器实例化2.静态工厂方式实例化3.实例工厂方式实例化Spring中Bean的作用域Spring Bean的生命周期bean创建/定义方式Java Spring框架是什么?它有哪些好处?Spring 是一个主流的 Java Web 开发框架,该框架是一个轻量级的应用框架,具有很高的凝聚力和吸引力。Spring 框架因其强大的

2020-12-07 10:17:00 237

原创 GC垃圾收集器

GC垃圾收集器

2020-11-30 20:15:45 690

原创 从0开始了解垃圾回收(GC)

简介Garbage Collection(GC),Java进程在启动后会创建垃圾回收线程,来对内存中无用的对象进行回收。

2020-11-26 15:17:18 399

原创 jvm | java类加载机制和类加载器(ClassLoader)详解

jvm | java类加载机制和类加载器(ClassLoader)详解

2020-11-21 09:50:56 348 1

原创 多线程 | Lock体系

锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源。在Lock接口出现之前,java程序主要是靠synchronized关键字实现锁功能的,而JDK5之后,并发包中增加了lock接口,它提供了与 synchronized一样的锁功能。虽然它失去了像synchronize**关键字隐式加锁解锁**的便捷性,但是却拥有了**锁获取**和**释放**的可操作性,**可中断的获取锁**以及**超时获取锁**等多种synchronized关键字所不具备的同步特性。

2020-11-17 19:41:14 201

原创 多线程基础概念1 | 线程的三种创建方式

多线程基础概念 | 线程的三种创建方式

2020-11-16 18:02:52 199

原创 synchronized 内部原理、常见锁策略、CAS、 以及死锁的产生和解决

synchronized 内部原理、常见锁策略、CAS、 以及死锁的产生和解决

2020-11-15 20:34:14 437

原创 MySQL - CRUD增查改删基础与进阶超详细(附例子)

MySQL - CRUD增查改删基础与进阶超详细(附例子)

2020-11-14 16:27:47 316

原创 MySQL练习

MySQL练习

2020-11-12 16:26:09 3390 6

空空如也

空空如也

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

TA关注的人

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