自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

心有谦谦结

人类用沙,想捏出梦里通天塔,为贪念不惜代价,驾驭着昂贵的木马,巢穴一层层叠加,最后啊~却一丝不挂,别害怕,我们都孤寡 ——《薛之谦》

  • 博客(378)
  • 收藏
  • 关注

原创 Spring之Spring Bean的循环依赖(循环引用)

Spring之Spring Bean的循环依赖(循环引用)

2024-07-23 17:16:05 86

原创 Spring之Spring Bean的生命周期

Spring Bean的生命周期通过BeanDefinition获取bean的定义信息调用构造函数实例化beanBean的依赖注入处理Aware接口(BeanNameAware、BeanFactoryAware、ApplicationContextAware)Bean的后置处理器BeanPostProcessor-前置初始化方法(InitializingBean、init-method)Bean的后置处理器BeanPostProcessor-前置销毁Bean

2024-07-23 17:13:15 254

原创 MySQL之数据库备份工具Mydumper

Mydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具。最近项目到了最后的验证阶段,通常一个库的数据都40多个G,且经常同时要操作四五十个库,用Mydumper做数据库的导出、导入就很方便了。 由于真实的项目场景,往往数据量很大,往往一个库的备份都需要7、8个小时,所以一般都是结合“nohup”命令来使用,把作业拉起来,挂到后台就下班了,第二天上班再来做数据验证。

2024-07-19 21:13:13 569

原创 Spring Cloud之五大组件

Eureka:注册中心Ribbon:负载均衡Feign:远程调用Hystrix:服务熔断Zuul/Gateway:网关

2024-07-15 20:46:42 949

原创 Spring之常见注解

@Component、@Controller 、@Service 、@Repository 使用在类上用于实例化Bean@Autowired 使用在字段上用于根据类型依赖注入@Qualifier 结合@Autowired一起使用,用于根据名称进行依赖注入@Scope 标注Bean的作用范围@Configuration 指定当前类是一个Spring配置类,当创建容器时会从该类上加载注解

2024-07-14 20:40:02 357

原创 Spring之AOP

AOP称为面向切面编程,用于将那些与业务无关,却对多个对象产生影响的公共行为和逻辑,抽取并封装为一个可重用的模块,这个模块被命名为“切面”(Aspect),减少系统中重复代码,降低模块间的耦合度,同时提高系统的可维护性。常见的AOP使用场景:记录操作日志、缓存处理、Spring中内置的事务处理。

2024-07-14 19:25:49 803

原创 Spring之事务失效的场景

Spring事务失效的场景:1.异常捕获处理:自己处理了异常,没有抛出。解决:手动抛出。2.抛出检查异常:配置rollbackFor属性为Excetion。3.非public方法导致事务失效,改为public。

2024-07-02 21:30:52 294

原创 Spring之spring的单例bean是线程安全的吗

Spring中Bean默认是单例模式的, 是无状态的(如Service类和DAO类),没有线程安全问题。如果Bean是有状态的,那就需要开发人员自己来进行线程安全的保证。例如,在bean中定义了可修改的成员变量等。此时最简单的办法就是改变bean的作用域,把singleton改为prototype,这样每次请求bean就相当于是new Bean(),这样就可以保证线程安全了。

2024-07-02 19:43:20 713 1

原创 MySQL之主从同步、分库分表

复制分三步:1.master主库在事务提交时,会把数据变更记录在二进制日志文件binlog中。2.从库读取主库的二进制日志文件binlog,写入从库的中继日志relaylog。3.slave从库重做中继日志中的事件,将改变反映它自己的数据。

2024-06-30 23:25:35 441

原创 MySQL之redolog和undolog

redo log:重做日志,记录的是事务提交时数据页的物理修改,用来实现事务的持久性。undo log:回滚日志,用于记录数据被修改前的信息,作用包括两个:提供回滚和MVCC(多版本并发控制)。undo log和redo log记录物理日志不一样,它是逻辑日志。

2024-06-30 15:34:52 326

原创 MySQL之事务特性ACID、并发事务问题、隔离级别

脏读:一个事务读到了另一个事务还没提交的数据。不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同。幻读:一个事务根据条件查询数据时,没有找到对应的数据行,但在插入数据时,又发现这行数据已经存在,好像出现了“幻影”。

2024-06-30 14:51:34 229

原创 MySQL之索引失效的情况

什么情况下索引会失效?1.违反最左前缀原则;2.范围查询右边的列不能使用索引;3.不要在索引列上进行运算操作;4.字符串不加单引号导致索引失效;5.以%开头的like模糊查询。

2024-06-30 12:44:41 399

原创 MySQL之聚簇索引和非聚簇索引

聚集索引,将数据存储与索引放到了一块,索引结构的叶子节点保存了行数据,必须有,而且只有一个。二级索引,将数据与索引分开存储,索引结构的叶子节点关联的是对应的主键,可以有多个

2024-06-30 00:21:26 392

原创 MySQL之如何处理超大分页

在数据量较大时,如果使用limit分页查询,在查询时,越往后,分页查询效率会越低。此时通过“覆盖索引+子查询”的形式进行优化。

2024-06-29 23:46:42 441

原创 MySQL之覆盖索引

覆盖索引是指查询使用了索引,返回的列必须在索引中能全部找到。使用id查询,直接走聚集索引查询,一次索引扫描,直接返回数据,性能高。如果返回的列中没有创建索引,就可能会触发回表查询,所以尽量避免使用select*

2024-06-29 17:48:54 409

原创 MySQL之索引创建原则

1.针对数据量较大,且查询比较频繁的表建立索引。(单表超过10w数据)2.针对常作为查询条件(where)、排序(order by)、分组(group by)操作的字段建立索引3.尽量选择区分度高的列作为索引,尽量建立唯一索引,区分度越高,使用索引的效率越高

2024-06-29 17:01:02 309

原创 MySQL之如何分析慢查询

一个SQL语句执行很慢,如何分析?可使用“explain”或者“desc”命令获取MySQL如何执行select语句的信息。语法:直接在select语句前加关键字 explain或desc

2024-06-29 16:37:43 372

原创 MySQL之如何定位慢查询

慢查询日志记录了所有执行时间超过指定参数(long_query_time,单位:秒,默认10秒)的所有SQL语句的日志

2024-06-29 16:02:30 320

原创 快速使用之Log4j2日志框架

Apache Log4j2是一个开源的日志记录组件,使用非常的广泛。在工程中以易用方便代替了 System.out 等打印语句,它是JAVA下最流行的日志输入工具。

2024-04-26 21:47:38 172

原创 log4j2日志配置文件

log4j2日志配置文件

2024-04-25 00:39:20 128

原创 (学习打卡2)重学Java设计模式之六大设计原则

六大设计原则:单一职责原则、开闭原则、里氏替换原则、迪米特法则原则、接口隔离原则、依赖倒置原则。这里有设计原则的概念定义,并且会根据不同的设计原则模拟不同的场景,最后用不同的反例和正例代码对设计原则加以说明。

2024-01-03 00:16:54 1663

原创 (学习打卡1)重学Java设计模式之设计模式介绍

关于设计模式的介绍:设计模式是什么?谁发明了设计模式?设计模式有哪些种类?

2023-12-31 00:10:53 866

原创 用idea跑起十多年前的项目

(发一篇两年前的库存)

2023-12-30 00:20:02 814

原创 Java file outside of soure root 导入项目时idea无法识别为java文件

在Project Structure的Modules中把idea帮我们自动关联的Content Root删掉,然后重新添加。即可解决idea不能识别出Java文件的问题。

2023-02-04 14:54:01 3893 4

原创 No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc

项目启动报错java.lang.IllegalStateException: No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalancer,引入spring-cloud-starter-loadbalancer可以解决。但是还需要解决nacos和springcloudribbonjar包不兼容的问题,文中也会有所阐述。

2023-02-01 00:36:43 21288 4

原创 java.io.IOException: java.lang.IllegalArgumentException: db.num is null@nacos启动报错解决

java.io.IOException: java.lang.IllegalArgumentException: db.num is null@nacos启动报错解决。快速解决:startup.cmd的启动参数,把set MODE="cluster" 改为set MODE="standalone"。然后重新启动即可。

2023-01-04 22:05:36 1874

原创 SpringBoot的properties文件和yml文件的优先级

结论:properties大于yml。

2022-12-28 22:36:49 1192 1

原创 ‘parent.relativePath‘ points at com.xxx instead of org.springframework.boot:spring-boot-starter的快速解决

快速解决: 在加入 即可解决报错。

2022-12-27 23:42:37 3418

原创 npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

关闭VScode,用管理员身份运行vscode,重新执行npm install,解决问题。npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。这样一来,真不知道怎么回事了。我的解决过程:检查是否安装node.js环境。灵光一闪,重启解决百分之九十八的问题。

2022-12-24 23:03:19 3914 2

原创 Git安装和配置

本文是以官网教程为基础而展开的实践笔记。初学者可以以本文为引入,但建议最终以官方文档为最终深入学习的参考。

2022-12-23 19:32:58 3590

原创 docker安装Redis

主要su root 切换到root账户,不指定版本即默认安装最新版。其他镜像在docker的安装,也是如此,下载安装+创建实例启动。不熟悉的情况下,先去官网查看一下要下载的镜像(以Redis为例)其他镜像在docker的安装(以Redis为例)在创建实例启动前,需要先创建配置目录。Redis创建实例并启动。进入配置文件,编辑配置。

2022-12-23 16:31:56 4002

原创 docker 安装 mysql

本文主要记录docker安装MySQL的具体步骤,MySQL的一些配置,以及安装启动MySQL过程中遇到的一些问题的解决方法。

2022-12-22 23:23:44 698

原创 docker配置阿里云镜像加速

因为docker是国外的网站,所以可以配置里云镜像加速。方式一:docker命令,完成配置即可方式二:通过修改daemon配置文件/etc/docker/daemon.json来使用加速器。

2022-12-18 23:52:03 14082

原创 Docker安装(图文教程)

本文主要简介了什么是docker,以及主要用图文的形式,阐述安装docker的详细步骤。包括Docker 安装官方文档地址,如何看官方文档,卸载系统之前的docker,设置安装地址,安装docker,启动docker,设置docker开启自启,附录上docker的常用命令。

2022-12-15 23:51:03 14325

原创 通过VirtualBox的方式快速安装Linux虚拟机

【概要】本文主要阐述,使用VirtualBox和Vagrant的方式快速创建Linux虚拟机。主要分三步:下载安装VirtualBox、下载安装Vagrant、创建虚拟机。​如果不想使用这种方式创建虚拟机,还可以使用Hyper-V的方式,请参考:https://blog.csdn.net/weixin_45764765/article/details/125249816?spm=1001.2014.3001.5501​

2022-12-15 00:09:50 2913

原创 maven安装教程@快速使用

本文主要阐述了,如果下载安装Maven,以及Maven的一些重要的配置。并对Maven的使用做了一定的介绍说明。

2022-12-09 01:05:42 495

原创 idea启动项目很久很慢的一种解决方案

一般地,JVM实例默认最大堆内存是机器的1/64,在启动时会不断地fullGC,不断的申请内存。所以我们可以通过设置这个参数,分配给它更大的运行内存,即可解决应用启动慢的问题。

2022-11-10 00:24:25 13582 1

原创 idea设置@所有tab显示不折叠

个人设置习惯,希望所有打开的tab都全显示,不折叠,快速配置。

2022-08-27 23:23:32 1731

原创 idea不提示更新@关闭提醒更新

idea不提示更新设置:关闭idea提醒更新的信息 不勾选自动更新即可。 不同版本设置有出入,以上为2019版,附录2021版设置。

2022-07-08 22:51:59 693

原创 docker: Error response from daemon: Conflict. The container name “/mysql“ is already in use by conta

docker安装好MySQL后,创建实例并启动时报错:docker: Error response from daemon: Conflict. The container name "/mysql" is already in use by container "5e1f4861f523bdff7cfcfb538d405ac506558b771f880ea4276a3104dfd49b5b". You have to remove (or rename) that container to be able

2022-06-22 00:30:36 8114

空空如也

空空如也

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

TA关注的人

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