Java
文章平均质量分 90
java底层
上士闻道,勤而行之
上士闻道,勤而行之;中士闻道,若存若亡;下士闻道,大笑之
展开
-
JVM知识体系总结3——垃圾回收
运行时区的堆是平时我们创建的的对象存放的空间,那么垃圾回收就是释放垃圾占用他的空间,防止内存泄露。有效的使用可以使用的内存,对内存堆中已经死亡的或者长时间没有使用的对象进行清除和回收。1,何为垃圾对象,垃圾对象就是已经死亡的或者长时间没有使用的对象,那么如何一个对象是否存活了?引用计数法:原理是设置一个计数器,有引用+1,引用失效-1,计数器为0则没有被引用,被GC,缺陷就是...原创 2020-05-06 22:15:34 · 34287 阅读 · 0 评论 -
JVM知识体系总结2——运行时数据区
java在运行的过程中无时无刻都会有对象创建,那么我们通过关键字NWE如何在虚拟机中创建对象的了?检查类是否已经被加载:当虚拟机JVM遇到new的指令的伤害,先检查能否在常量池中定位一个类的符号引用,并且检查这个符号是否已经被加载,解析和初始化过。如果没有执行相应的类加载操作 为新生的对象分配内存:类加载检查通过后,为新生的对象分配内存空间,找到一块足够大的内存空间,如果堆内存...原创 2020-05-03 23:14:40 · 37789 阅读 · 0 评论 -
Mybatis框架源码解读
Configuration:存储数据源,事务配置等信息调用addMapper方法的时候它主要是调用的mapperRegistry的addMapper方法,mapperRegistry会new一个MapperProxyFactory对象(构造函数的入参是我们的Mapper接口)然后以Mapper接口的全限定名为key,MapperProxyFactory对象为值存放在Configuration...原创 2020-02-03 17:08:23 · 43960 阅读 · 0 评论 -
三,SpringCloud教程-分布式配置中心Spring cloud Config和消息总线Spring cloud bus集成
在分布式系统中,我们每个服务都有自己的配置内容,这些内容里面有很多共用的配置,比如数据库连接,注册中心的配置等,这个时候就需要一个统一的文件中心服务来就行把这些配置集中管理,Spring cloud Config可以帮我们完成这个功能,但是如果仅仅只有的话还是不能满足我们的需求,假如我们配置发生了改变,这个时候其他的服务就需要重新读取新的配置内容,如果频繁重启服务就会造成服务中断,影响一些核心业务...原创 2020-01-20 16:35:30 · 43977 阅读 · 0 评论 -
一,SpringCloud教程-创建一个Eureka服务
1,创建一个Eureka服务首先创建一个主Maven工程,在其pom引入spring Boot和Spring Cloud版本依赖,这个pom文件作为父pom文件,起到依赖版本控制的作用,其他module工程继承该pom。代码如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apa...原创 2020-01-16 15:16:02 · 44402 阅读 · 0 评论 -
JVM知识体系总结1——JVM结构,类加载
1.jvm基本结构编译器会将我们编写的Java文件编译成 .class 文件,JVM会加载并执行 .class 文件。下面的图展示了JVM的整体架构1,类加载子系统负责动态加载类,在运行时(而非编译时),当一个类初次被引用的时候,它将被加载、链接、初始化。2,运行时数据区,运行时数据区可以划分为五个区域: 方法区:全局共享资源,所有的类级别的数据都会存储到这里,包括...原创 2020-01-16 11:00:47 · 43768 阅读 · 0 评论