自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring AOP

AOP的理解

2024-03-29 18:52:50 828

原创 Spring BeanFactory和FactoryBean的区别

以Bean结尾,表示它是一个Bean,不同于普通Bean的是:它是实现了FactoryBean接口的Bean,根据该Bean的ID从BeanFactory中获取的实际上是FactoryBean的getObject()返回的对象,而不是FactoryBean本身,如果要获取FactoryBean对象,请在id前面加一个&符号来获取。相同点:都是用来创建bean对象的。FactroyBean 的好处。

2024-03-29 10:43:52 344

原创 Mysql创建用户,并授权数据库所有权限

授权新用户对数据库的权限(这里的’databaseName’是数据库名,username 是用户)– 创建新用户(这里的’username’是新用户名,'password’是新密码)– 刷新权限使变更生效。

2024-03-29 09:50:38 174

原创 spring 的理解(Spring IOC AOP)

spring 的理解,IOC,AOP,Bean 的生命周期

2024-03-26 17:58:40 1128

原创 Spring IOC 容器循环依赖解决(三级缓存)

Spring IOC 容器循环依赖解决(三级缓存)

2024-03-26 16:42:01 1048

原创 Spring IOC 容器的加载过程(bean 的创建过程)

Spring IOC 容器的加载过程(bean 的创建过程)

2024-03-25 18:32:43 535

原创 Spring IOC refresh() 方法执行流程

refresh() 方法执行流程

2024-03-25 18:32:26 310

原创 mysql面试,事务四大特性,mvcc版本控制,3个重要日志,索引结构,索引失效,innodb引擎执行流程,主从复制,锁,page页

mysql面试,事务四大特性,mvcc版本控制,3个重要日志,索引结构,索引失效,innodb引擎执行流程,主从复制,锁,page页

2024-03-22 17:51:07 700

原创 innodb 的 buffer pool 管理 page

文件头,文件尾,页头,页目录,最小记录+最大记录,用户记录,空闲区域;空闲页,干净页,脏页;free List ,Flush List ,Lru List

2024-03-22 10:53:15 629

原创 mysql主从复制

主从复制,java 代码实现读写分离,解决从库读延迟问题,DDL,DDL,DML 的含义

2024-03-21 13:54:15 412

原创 java 单元测试 junit 4使用

junit 4 maven依赖

2024-03-21 10:38:06 338

原创 mysql分库分表

垂直分库,水平分表,

2024-03-21 10:32:50 416

原创 mysql 日志文件,redolog重做日志,undolog回滚日志,binlog归档日志

为什么会有redo log和binlog两份日志呢 crashSafe 和 两段提交

2024-03-20 12:29:38 1132

原创 mysql Innodb 存储引擎 原理

nysql innodb 引擎 执行流程

2024-03-20 10:19:40 516

原创 mysql索引(索引失效,遵循最左前缀,使用1.全值匹配 2.覆盖索引,失效:索引加函数,范围查询右边的列,!=, is null, like左模糊,传参类型不匹配,or/in)

遵循最左前缀,建议使用1.全值匹配 2.覆盖索引,索引失效:索引加函数,范围查询右边的列,!=, is null, or/in,like左模糊,传参类型不匹配

2024-03-18 18:23:16 1626

原创 mysql索引(explain 执行计划)

explain 执行计划:6个关键优化点:select_type, type , ley ,ley _len ,row,extra

2024-03-18 16:16:48 1861

原创 mysql索引 (索引的忧缺点 ,联合索引)

索引的忧缺点:读操作快,写操作慢,维护成本高;,联合索引:最左前缀原则,更容易使用覆盖索引,减少回表,可以更精准的命中数据范围,占用更少的磁盘空间

2024-03-15 16:07:16 435

原创 mysql索引(聚簇索引,非聚簇索引:回表)( innodb 引擎库表设计注意事项)

(聚簇索引,非聚簇索引:回表)( innodb 引擎库表设计注意事项)

2024-03-15 14:33:36 406

原创 mysql 索引(为什么选择B+ Tree?)

的优点:降低I/O成本,CPU的资源消耗(数据持久化在磁盘中,每次查询都得与磁盘交互)缺点:更新表效率变慢,(更新表数据,还要更新索引),占用空间分类:主键索引,唯一索引,单值索引,组合索引。

2024-03-14 18:39:29 524

原创 mysql锁

全局锁(读锁,写锁),表锁(意向锁共享锁,意向排它锁),行锁(共享锁,排他锁)(记录锁,间隙锁,临建锁)。乐观锁,悲观锁

2024-03-14 16:16:50 593

原创 mysql事务(MVCC机制:undo日志)(mysql执行过程:redo日志,Buffer Pool缓存池)

mysql事务(MVCC机制:undo日志)(mysql执行过程:redo日志,Buffer Pool缓存池)

2024-03-14 16:02:48 1673

原创 JVM诊断,调优(STW)

线程结束后,局部变量也就释放了,堆区对象的引用也就失效了,就变为垃圾对象,若不将该对象清除,就会无限大。Attach 到目标进程上的 arthas 还会继续运行,端口会保持开放,下次连接时可以直接连接上。如果不暂停用户线程,就意味着在垃圾收集过程中会持续产生新的垃圾对象,无法完全清理干净。其次,用户线程的运行必然会导致对象的引用关系发生改变,可能出现两种情况:多标和漏标。如果只是退出当前的连接,可以用quit或者exit命令。如果想完全退出 arthas,可以执行stop命令。2.给内存足够大小,避免。

2024-03-13 18:22:29 179

原创 JVM垃圾收集器-serial.parNew,parallelScavnge,serialOld,parallelOld,CMS,G1

CMS收集器(低停顿),G1收集器(大容量,筛选回收),serial收集器(单线程),parNew收集器(多线程),parallel Scavenge收集器工作原理

2024-03-12 12:35:11 1338

原创 JVM垃圾收集算法

标记清除算法,复制算法,标记整理算法,分代收集算法

2024-03-12 10:10:28 329

原创 判断类是否可以被回收

3.该类对应的class 对象,没有任何地方被引用。类对象:将该类当作一个实例 :比如反射获取该类。类的实例:指new 出来的一些对象。1.该类的所有实例都被回收,2.加载该类的类加载器被回收。

2024-03-11 21:16:44 212

原创 判断对象是否可以被回收:引用计数法,可达性分析,finalize()判定

沿着GCroot根向下搜索,所有可以搜到的对象,都会被标记,反之,就是判定为垃圾对象。遍历内存中的所有变量,静态变量,然后将该变量当作GCroot根,此类对象是指,在进行可达性分析后,未被GCroot根标记的对象。java 有四种引用类型,强引用,软引用,弱引用,虚引用。②软引用:当GC完后,若内存还是满,则会将弱引用对象回收。②,若有,则判断有没有与GCroot根上的对象引用。对象每次被赋值给变量时,该对象的计数+1,若将该变量置为null,则该对象的计数-1。若该对象的计数器为0 ,则该对象就会。

2024-03-11 21:07:15 306

原创 JVM内存分配与回收策略

【代码】JVM内存分配与回收策略。

2024-03-11 20:51:20 317

原创 JVM运行模式-解释模式和编译模式,逃逸分析

当一个对象在方法中被定义后,判断是否会被其他方法引用,若被引用,则放堆内存,否则放战针中,若栈帧中放不下,还是会放到堆中。3.混合模式:少数热点代码进行编译模式,其余是解释模式。1.解释模式:运行过程中进行编译一行,执行一行。2.编译模式:一次性编译成机器码,再执行。编译后的机器码文件很大,占用特别多内存。分析对象的动态作用域。JVM参数:默认开启。

2024-03-09 10:55:55 367

原创 JVM内存模型-堆

堆的作用:用来存放对象。

2024-03-09 10:24:41 897

原创 JVM内存模型-本地方法栈

使用:去调用C语言的函数库,即后最为 .dll 文件为C语言的函数库。

2024-03-09 09:46:56 89

原创 JVM内存模型-静态链接,动态链接

将符号引用 替换为直接引用1.符号引用:字节码文件中,每一个代码都会被识别为一个符号可以使用以下命令查看2.直接引用:内存地址指针。

2024-03-09 09:41:49 202

原创 JVM内存模型-方法区(元空间)

2.使用直接内存,即物理机内存,不使用JVM虚拟机内存。3.用来存放程序启动时的 常量,类元信息包含以下内容。

2024-03-09 09:32:36 352

原创 JVM内存模型-栈,栈帧,操作数栈,

线程中的每一个方法都会被分配一个独有的栈帧空间,这样的原因是,每一个方法的局部变量作用域都是该方法。线程私有,程序启动时,虚拟机为每一个线程分配一块栈内存空间,来存储局部变量。栈帧又包含:局部变量表,操作数栈,动态链接,方法出口。,用来临时存放基本类型的数值,和引用类型的对象地址。操作数栈----->线程里方法的局部变量,数值等。栈帧------>线程里的方法。

2024-03-09 09:10:55 273

原创 类的加载,双亲委派机制

int =0,boolen =false ,引用类型=null。每次加载都会向父类中进行加载,如果没有父类了,就执行。通过IO流将class文件加载到内存区域。2.验证:保证每个类都是可以被引用的。类的加载器,是有父子关系,但不是继承。将 静态方法 替换为所存内存的指针。2.保证类的唯一性,避免重复加载。①校验文件格式 .class。②校验是否符合Java语言规范。1.沙箱安全,防止类被篡改。classpath 路径。③校验字节码是否合法。①将静态变量分配内存。3.应用程序类加载器。

2024-03-08 11:49:11 350

原创 JVM的内存结构,JDK和JRE关系

1.JDK即java开发工具,jre 是Java 运行环境关系:JDK=jre+开发工具jre=jvm+java核心类库。

2024-03-08 10:12:22 484

原创 VMware Network CentOS 虚拟机 安装使用

VMware Network CentOS 虚拟机 安装,虚拟机IP网关设置,Windoes网卡设置,访问局域网内宿主机上的虚拟机服务

2023-08-21 14:54:37 174

原创 centos 8 安装 Redis

centos 8 安装 Redis 登录

2023-07-17 14:17:23 187 1

原创 CentOS8 安装 Mysql5.7

CentOS 8 安装 Mysql 5.7 ,初次登录,改密码

2023-07-17 11:18:24 657 1

原创 JAVA Word 转 图片,Word 转 PDF 复制即用

Java 将doc 转为 图片,PDF

2023-06-14 14:44:31 946

转载 Java API 接口加密解密实现

Java API 接口加密解密实现。

2022-08-15 19:07:41 341

空空如也

空空如也

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

TA关注的人

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