自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

科蒙D的博客

Golpeace

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

原创 深入理解Jvm(三)--垃圾收集器

1.垃圾收集器:Garbage Collection简称GC

2021-09-10 15:17:14 176

原创 深入理解Spring(一)BeanDefinition接口

写在前言:本内容是自学过程中进行的重点内容记录,用到的图片,术语来源于网络博客、视频术语、书本当中。个人只是自我的理解和总结归纳。https://blog.csdn.net/java_lyvee/article/details/102633067一、JavaBean和SpringBean的区别SpringBean是通过Spring容器来初始化的对象,SpringBean具有Spring的生命周期,但SpringBean一定是JavaBean,但JavaBean不一定是SpringBean,Jav

2021-09-10 15:16:47 322

原创 Jvm上篇(一)JVM基本概述

1.Jvm跨平台的语言: Jvm是承载再操作系统之上的,读取字节码文件,只要设备上有虚拟机那么就能运行。一次编译,任何地方都可运行。2、Jvm也是跨语言的平台 不同的语言按照自己的编译器编译成字节码文件,只要这个字节码文件符合Jvm的规范,那么就能被Jvm所加载,所运行。比如Java是javac,Groovy用他的编译器等等。 符合Jvm加载字节码的规范,比如,字节码的魔数是cofe babe3.Jvm的GC发展类...

2021-09-10 15:16:33 147

原创 垃圾回收器

1、CMS垃圾收集器:old区的垃圾回收器 一般搭配使用的是:年轻代:ParNew,老年代:CMS2、CMS特点:采用标记删除算法 a、初次标记:标记和GC Root直接引用的对象。STW b、并发标记:标记老年代所有对象,根据可达性。会产生一个问题就是,并发标记没有STW,可能存在遗漏现象,比如一个线程标记了可用,另一个标记了不可用。那么就需要修正。 c、重新标记:修正并发标记产生的错误。STW d、并发清理:采...

2021-09-10 15:15:40 94

原创 Mysql如何解决幻读:

1、事务隔离级别:在一次事务里面,多次查询之后,结果集的个数不一致的情况叫做幻读。而多或者少的那一行被叫做幻行,也就是说当一个事务在进行读取数据的时候,其他事务对该数据进行了改变。在高并发数据库系统中,需要保证事务与事务之间的隔离性,还有事务本身的一致性。脏读:比如A事务读取到了B事务还没有提交的数据,因为什么原因B事务回滚了,那么A事务读取的数据和数据库中的数据不同,也就是读到了其他事务没有提交的数据。读取已提交会产生不可重复读:...

2021-09-10 15:15:11 12664 11

原创 Dubbo

协议:Dubbo是一种分布式服务框架也是一种协议,dubbo框架默认使用dubbo协议。dubbo协议是阿里巴巴自己实现的一种应用层协议,传输层还是TCP。所以Dubbo协议与HTTP、FTP,SMTP这些应用层协议是并列的概念。除了默认的Dubbo协议,Dubbo框架还支持RMI、Hessian、HTTP等协议。RPC面向过程,只发送 GET 和 POST 请求。GET用来查询信息,其他情况下一律用POST。请求参数是动词,直接描述动作本身。 RESTful面向资源,使用 POS...

2021-09-10 15:14:41 1328

原创 Jvm上篇(三)运行区域

1、运行内存的结构: 对于堆内存和方法区是线程共享的,对于程序计数器PC,虚拟机栈VMS,本地栈NMS,都是线程私有的。JIT的缓存空间是在非堆中。 Runtime对象:2、JVM线程:...

2021-07-16 11:31:33 85

原创 Jvm上篇(二)类加载子系统

1、类加载器系统:2、类加载器的执行过程: 加载、链接、初始化 1、加载:类加载器从磁盘中将字节码文件class文件加载进内存。 2、链接(验证、准备、解析):字节码文件中魔数是特定的标识。cofe babe。 3、初始化:模板初始化。3、加载:4、链接: 准备:编译时给变量分配内存,且设置类变量的默认初始值。比如 ...

2021-07-16 10:47:53 88

原创 计算机存储单位

1、位/比特: 位是计算机存储的最小单位,简称:bit,比特。计算机中用二进制0和1来表示数据。一个0或者一个1就表示一位。2、字节:Byte 是计算机存储容量的一种计量单位,通常情况下一个字节=8位。3、字符: 字符是表示计算机自然数据单位的术语。一个字符= 2个字节。4、码表计算机中无论任何数据的传输、存储、持久化都是以二进制的形式体现的。(0,1),当我们需要存储一个字符时需要持久化为二进制,但是计算机展示的时候并不...

2021-07-15 08:33:11 8618

原创 ThreadLocal理解

1、ThreadLocal:Synchronized用于线程间的数据共享,而ThreadLocal则用于线程间的数据隔离。当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。ThreadLocal是一个线程内部的存储类,可以在指定线程内存储数据,数据存储以后,只有指定线程可以得到存储数据。用于解决多线程中相同变量的访问冲突问题。...

2021-07-15 08:31:44 446

原创 数据结构--树、二叉树、二叉查找树、平衡二叉查找树、红黑树、B树、B+树

1.树的基本概念:度:结点拥有的子树数目称为结点的度。 深度/高度:树中结点的最大层次数称为树的深度或高度。2.二叉树:二叉树是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树组成。根节点中记录了左子树和右子树的引用。 left - data - right 由二叉树定义以及图示分析得出二叉树有以下特点:...

2021-07-13 09:30:20 243

原创 深入理解Jvm(二)--对象

1、对象的创建:(普通对象,不包过数组和Class对象)new字节码指令:当Jvm遇到字节码new指令时,首先检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有必须执行类的加载过程。(双亲委派机制) 计算创建对象所需要的内存:类加载检查通过后,Jvm将为新生的对象分配内存,对象所需内存的大小在类加载完成后便完全确定。在堆内存中就是将一块确定大小的空闲的内存分配出来。2、对象的内存分配:如果内存时整齐连续的:如果垃圾回收机制

2021-05-26 17:24:59 90

原创 深入理解Jvm(一)--内存理解

一、Java内存区域理解Java与C++之间有一堵由内存动态分配(加载)和垃圾收集技术所围成的高墙,墙外面的1人想进去,墙内边的人想出去。1.Jvm内存:Jvm在执行java程序的过程中会把Jvm所管理的内存划分为若干个不同数据区域。方法区 Method Area、虚拟机栈VM Stack、本地方法栈Native Method Stack、堆Heap、程序计数器Program Counter Register。 注:方法区、堆运行时所有数据是线程共享的。栈、本地栈、程序计数器运.

2021-05-26 11:03:49 2162 2

原创 数据库、Sql总结

1、数据库分类:关系型数据库:Mysql、Oracle、DB2、SQLServer非关系型数据库:Redis、MongoDb2、关系型数据库和非关系型数据库的区别:A:关系型数据库:是指采用了关系模型来组织数据的数据库。 关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。优点:可以使用Sql语言便捷的操作数据,维护数据;缺...

2019-04-01 12:56:36 669

原创 本地连接远程Oracle数据库的两种方式

第一种方式:安装Oracle客户端使用PL/SQL软件连接ORACLE(安装两个软件)1、安装Oracle客户端软件(绿色免安装):2、使用cmd命令连接远程Oracle数据库:3、连接数据库: 命令:sqlplus 用户名/密码@IP地址:1521/实例名(注意最后使用的/)4、使用PL/SQL连接ORacle数据: 第一步:打开P...

2019-03-18 11:46:22 7104

原创 安装Git——Eclipse连接GitLab

1、安装Git:第一步:安装Git服务端软件:第二步:安装Git客户端软件:第三步:安装中文软件包:第四步:更改语言环境,打开TortoiseGit软件更改:2、打开eclipse,生成git的公钥和私钥:打开.ssh/文件下的公钥文件:3、配置连接的hosts文件,否则因为网络的原因连接失败:4、在git中配置密钥:...

2019-03-18 10:17:18 1758

原创 【4】Servlet-Demo、执行流程、urlpatter配置、注解开发

1、Demo入门:第一步:创建Servlet的实现类,继承HttpServlet,复写doGet方法和doPost方法;        第二步:编写配置文件,在配置文件中建立映射管理:        第三步:浏览器访问配置文件配置的映射      第四步:后台接收前台的请求,获取请求的数据,地址栏携带参数的访问方式为get请求        总结:首先页面地址...

2019-01-06 20:29:04 197

原创 【3】Servlet介绍、生命周期、HttpServlet创建、初始化、执行流程

1、Servlet介绍:Servlet是运行在服务端的Java程序,是sun公司提供的一套规范,用来处理客户端的请求,响应给浏览器的动态资源。2、Servlet规范简介,Web框架如何注入到Servlet当中:Web框架一般是通过一个Servlet提供统一的请求入口,将指定的资源映射到这个servlet上,然后在这个servlet中进行框架的初始化配置,访问Web页面中的数据,进...

2018-12-26 16:16:12 1153

原创 【2】Http协议、请求响应、Web项目创建、Tomcat部署/发布

1、Http简介:HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是一个应用层的通信协议。是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片, 查询结果等)。HTTP协议工作于客户端——服务端架构上。浏览器作为HTTP客户端...

2018-12-17 17:53:13 257

原创 【1】Maven总结——Eclipse/Idea配置Maven/创建Maven项目

0、Maven中央仓库地址:http://search.maven.org/http://mvnrepository.com/1、Idea配置Maven的全局配置文件和本地仓库路径:第一步:安装Maven第二步:在maven的conf文件夹下打开Maven的配置文件settings.xml,并配置Maven的默认本地仓库路径。第三步:Maven中指定JDK的版...

2018-12-11 21:56:16 284

原创 SQL练习记录—【1】

数据表: course表 teacher表 sc表 student表 1、查询" 01 ...

2018-12-11 09:17:47 379

空空如也

空空如也

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

TA关注的人

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