自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (2)
  • 收藏
  • 关注

原创 理解字符串常量池(StringTable)

文章目录一、什么是StringTable?二、字符串的创建1. 字面量创建2. 拼接创建三、intern方法四、常量池的位置五、一些例子一、什么是StringTable?字面量方式创建的字符串,会放入 StringTable 中,StringTable 管理的字符串,才具有不重复的特性。而 char[],byte[],int[],String,以及 + 方式本质上都是使用 new 来创建,它们都是在堆中创建新的字符串对象,不会考虑字符串重不重复,这种字符串的缺点就是如果存在大量值相同的字符串,对内存

2020-08-29 21:48:05 1808 1

原创 Mysql进阶-InnoDB事务

文章目录一、为什么要有事务?二、ACID属性三、事务的实现1. redo2. undo四、事务隔离级别五、分布式事务一、为什么要有事务?事务会把数据库从一种一致状态转换为另一种一致状态。在数据库提交工作时,可以确保要么所有修改都已经保存了,要么所有修改都不保存。二、ACID属性字母属性介绍A(Atomicity)原子性原子性指整个数据库事务是不可分割的工作单位。只有使事务中所有的数据库操作都执行成功,才算整个事务成功。事务中任何一个SQL语句执行失败,已经执行成功的SQL语

2020-08-29 15:57:29 521

原创 MySql进阶-间隙锁(gap-key)

可参考参考《InnoDB存储引擎》tips:SELECT…FOR UPDATE对读取的行记录加一个X锁,其他事务不能对已锁定的行加上任何锁。SELECT…LOCK IN SHARE MODE对读取的行记录加一个S锁,其他事务可以向被锁定的行加S锁,但是如果加X锁,则会被阻塞。使用这两种一致性锁定读的办法注意开启事务,提交事务,来锁定与释放锁。Innodb锁算法Record Lock:单个行记录上的锁Gap Lock:间隙锁,锁定一个范围,但不包含记录本身Next-Key Lock∶G.

2020-08-26 21:47:49 10152 4

原创 java源码 - Spring5.x(7)之 SpringMVC

文章目录1. SpringMVC1.1 ContextLoaderListener1.2 initWebApplicationContext1. SpringMVCSpringMVC 系列请求debug1.1 ContextLoaderListener这里主要是为了搞清楚SpringMVC的IOC启动过程ContextLoaderListener可以指定在Web应用程序启动时载入Ioc容器,正是通过ContextLoader来实现的,可以说是Ioc容器的初始化工作。如果要使用Context

2020-08-19 11:45:08 203

原创 java源码 - Spring5.x(6)之 事务

NamespaceHandler初始化与调用时机的文章文章目录1. 事务自定义标签todo1. 事务自定义标签配置文件版:<tx:annotation-driven />注解版:@EnableTransactionManagementorg.springframework.transaction.config.TxNamespaceHandler @Override public void init() { registerBeanDefinitionParser(".

2020-08-15 21:17:40 245

原创 java源码 - Spring5.x(5)之 整合MyBatis源码

文章目录1. Mybatis独立使用2. 整合Spring3. 源码分析1. Mybatis独立使用 <!--MyBatis --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <art

2020-08-14 16:52:01 222

原创 java源码 - Spring5.x(4)之 AOP

官方文档文章目录1. AOP示例2. AspectJAutoProxyBeanDefinitionParsertodo1. AOP示例//被增强的目标对象@Component//AspectJ注解方式@Aspectpublic class AspectAdviceBeanUseAnnotation { // 定义一个全局的Pointcut @Pointcut("execution(* com.lyq.config.aopconfig.*.do*(..))") pu.

2020-08-13 11:19:39 207

原创 java源码 - Spring5.x(3)之 ApplicationContext#refresh

ApplicationContext 相比BeanFactory提供了更多的扩展功能文章目录1. ApplicationContext1. ApplicationContext

2020-08-12 22:19:59 159

原创 java源码 - Spring5.x(2)之 Bean的加载与创建

文章目录

2020-08-10 17:04:32 292

原创 java源码 - Spring5.x(1)之 基本概览

书籍《Spring源码深度解析》官方文档之前的一篇推荐一个博主的系列博客,手写IOC,AOP源码Spring5.x文章目录1. 整体架构1.2 环境搭建pom2. Spring流程分析3. 核心类3.1 DefaultlistableBeanFactory3.2 XmlBeanDefinitionReader3.3 XmlBeanFactory1. 整体架构从Spring的架构图从下往上看,下层是上层的依据基础。Core Container其中的Core和Beans模块是框架的.

2020-08-07 21:51:41 212

原创 Tomcat学习笔记(9)- 管道(Pipeline)、tomcat启动

文章目录1. 管道模式2. Valve接口3. Pipeline4. 流程4.1 StandardEngineValve4.2 StandardHostValve4.3 StandardContextValve4.4 StandardWrapperValve4.5 debug一次1. 管道模式管道模式把多个对象连接起来,整体看起来就像若干个阀门嵌套在管道中,而处理逻辑就放在阀门上。在tomcat中,Valve接口定义了阀门的调用方法,由于阀门与阀门使用单链表结构连接,因此需提供对下一个阀门的操作;Pi

2020-08-03 17:11:41 703

原创 Tomcat学习笔记(8)- Mapper(映射器)与 JNDI

文章目录1. 请求的模型映射2. Mapper的实现3. 路由Mapper4. JNDI简介6. 在Tomcat中使用JNDI1. 请求的模型映射Mapper组件主要的职责是负责Tomcat的请求路由,每个客户端的请求到达Tomcat后,都将由Mapper路由到对应的处理逻辑(Servlet)上。在Tomcat的结构中有两部分会包含Mapper组件,一个是Connector组件,称为全局路由Mapper;另外一个是Context组件,称为局部路由Mapper。本章将深入探讨Tomcat的路由模块Ma

2020-08-02 21:48:13 760

原创 Tomcat学习笔记(7)- Loader(类加载器)

文章目录1. 什么是类加载器2. 破坏双亲委派3. Tomcat的类加载器4. ClassLoaderFactory5. todo1. 什么是类加载器详情可了解所谓类加载器,就是用于加载Java类到Java虚拟机中的组件,它负责读取Java字节码,并转换成java.lang.Class类的一个实例,使字节码.class文件得以运行。类加载器有如下三种分类:启动类加载器(Bootstrap ClassLoader):加载对象是Java核心库,把一些核心的Java类加载进JVM中,这个加载器使用原生

2020-08-02 12:05:29 465

原创 Tomcat学习笔记(4)- Connector组件

Connector(连接器)组件是Tomcat最核心的两个组件之一,主要的职责是负责接收客户端连接和客户端请求的处理加工。每个Connector都将指定一个端口进行监听,分别负责对请求报文解析和对响应报文组装,解析过程生成Request对象,而组装过程则涉及Response对象。文章目录1. Protocol组件2. Http11Protocol2.1 ProtocolHandler2.2 Http11AprProtocol2.3 AbstractHttp11Protocol2.4 AbstractP.

2020-08-01 21:52:15 421

原创 Tomcat学习笔记(3)- Server组件与Service组件

目录1. Server1.1 Server组件的作用Server组件和Service组件是Tomcat核心组件中最外层级的两个组件,Server组件可以看成Tomcat的运行实例的抽象,而Service组件则可以看成Tomcat内的不同服务的抽象。1. Server请看:home/conf/server.xml文件Server组件是代表整个Tomcat的Servlet容器,从server.xml配置文件也可以看出它属于最外层组件。默认配置了五个Listener:GlobalNamingR

2020-08-01 21:52:04 599

原创 Tomcat学习笔记(5)- 容器(Engine、Host、Context、Wrapper)

Engine即为全局引擎容器,它的标准实现是StandardEngine。Host在整个Servlet引擎中抽象出Host容器用于表示虚拟主机,它是根据URL地址中的主机部分抽象的,一个Servlet引擎可以包含若干个Host容器,而一个Host容器可以包含若干个Context容器。在Tomcat中Host的标准实现是StandardHost,它从虚拟主机级别对请求和响应进行处理。一个Context对应一个Web应用程序,但Web项目的组成比较复杂,它包含很多组件。对于Web容器,需要将Web应用.

2020-08-01 21:51:53 2198

编译原理-SLR分析法设计与实现

SLR分析法设计与实现,后人乘凉,我也是找了很久。

2020-06-18

编译原理--LL1文法.zip

LL(1)语法分析器的设计与实现

2020-05-17

空空如也

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

TA关注的人

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