- 博客(9)
- 资源 (28)
- 问答 (1)
- 收藏
- 关注
原创 tomcat编解码过程
在使用tomcat的时候, 一直很好奇他是怎么对请求的参数进行编解码的,带着下面三个问题,一起看下。1. get/post请求参数如何编解码,根据请求头部中什么参数配置2. URI编码3. 中文参数为什么会出现乱码4. POST请求参数form表单和Json编码策略是否一样1. 下图是tomcat各版本默认的编解码方式我们发现tomca6和tomcat7对UR...
2019-10-23 15:14:08 731
原创 tomcat处理一个http请求的过程
以NIO方式为例讲解一下tomcat处理一个http请求的过程 (servlet)首先http请求本质上也是建立在socket连接之上的,因此大概处理路径不外乎socket.accept() ---> socket流封装--->丢入Worker线程池处理----->Container内部处理----> 最终交给Servlet处理----> 返回结果...
2019-10-23 11:33:45 566
原创 tomcat之Container初始化与加载
1. Container结构Engine: servlet引擎Host: 虚拟主机Context: ServletContext,对应一个web项目或war包,包含多个WrapperWrapper: 对Servlet的封装2. 初始化从Catalina类开始,主要涉及createStartDigester()方法,如下图所示addObjectCrea...
2019-10-18 17:59:31 204
原创 tomcat之connector分析
1. connector配置<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /><Connector port="8009" protocol="AJP/1.3" redirectP...
2019-10-18 14:30:48 221
原创 tomcat源码分析总结
1. tomcat类加载机制,为什么要违背双亲委托机制(线程上下文类加载器) 线程上下文类加载器是指调用方法当前类队员的类加载器。parant类加载器去请求子加载器加载某些依赖的jar2. tomcat线程模型3. tomcat之connector分析4. tomcat之valve机制5. tomcat之容器类分析 Engine:org.apache.catalin...
2019-10-16 17:06:20 180
原创 tomcat为什么要违背双亲委托机制
1. 什么是双亲委托机制双亲委托的含义:1) 加载的顺序固定: 引导类加载器--》扩展类加载器--》应用类加载器---》自定义类加载器2) 当我们使用扩展类加载器加载某个类的时候,若引导类加载器已经加载的该类,就不会继续加载过程3) 下一级类加载器的加载过程依赖上一级类加载器4)jdk核心class只能被加载一次双亲委派模型的工作过程是:如果一个类加载器收到了...
2019-10-15 18:08:46 614
原创 tomcat线程模型--NIO
Tomcat支持三种接收请求的处理方式1)BIO阻塞IO,对应org.apache.coyote.http11.Http11Protocol2) NIO非阻塞IO,基于selectort实现,对应org.apache.coyote.http11.Http11NIOProtocol3) APR, 对应org.apache.coyote.http11.Http11AprPro...
2019-10-15 15:07:43 349
原创 tomcat源码之类加载机制
1. tomcat类加载思维导向图2. java 类加载思维导向图3. tomcat类加载顺序 当应用需要到某个类时,则会按照下面的顺序进行类加载: 1 使用bootstrap引导类加载器加载,加载jvm所需的基础类 2 使用system系统类加载器加载,加载tomcat启动类等相关 3 使用应用类加载器在WEB-INF/classe...
2019-10-15 11:39:45 149
原创 java基础面试题带答案
Java基础1.JAVA中的几种基本数据类型是什么,各自占用多少bit。 byte(8),char(16),short(16),int(32),long(64),float(32),double(64),boolean(1) 2.String类能被继承吗,为什么。 不能, final类型,不能被继承3.String,Stringbuffer,StringBuild...
2019-10-14 16:53:52 747
jmeter-plugin-dubbo-jar-with-dependencies.jar
2019-12-17
HTTP协议文档
2015-08-02
JSON的jar包
2015-07-31
java网络socket编程过程中遇到的问题
2013-08-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人