1.servlet容器是如何工作的?

  a.创建一个request对象,用可能会在调用的Servlet中使用到的信息填充该request对象(参数,头,cookies,查询字符串,URI等)。request是javax.servlet.ServletRequest接口或javax.servlet.http.ServletResponse接口的一个实例。

  b.创建一个调用Servlet的response对象,用来向Web客户端发送响应。response对象是一个实例。

  c.调用Servlet的service()方法,将request对象和response对象做为参数传入。Servlet从request对象中读取信息,并通过response对象发送响应信息。

2.Catalina框图

  a.Catalina划分为两个模块:连接器和容器

    1)连接器:负责将一个请求与容器相关联。它为接收到的每一个HTTP请求创建一个request对象和response对象。将处理过程交给容器。

    2)容器:接收request和response,并负责调用相应的Servlet的service()方法。

3.HTTP

  a.一个HTTP请求包含三部分

    1)请求方法 - 统一资源标识符(Uniform Resource Identifier,URI) - 协议/版本

      GET、POST、HEAD、OPTIONS、PUT、DELETE、TRACE

      URI通常解释为相对于服务器根目录的相对路径。因此,总以/开头。

    2)请求头

      包含客户端环境和请求实体正文的相关信息。可能包含浏览器使用的语言,请求实体正文的长度等信息。各个请求头之间用回车/换行符号隔开。

    在请求头和请求实体正文之间有一个空行,只有CRLF符。空行对HTTP请求格式非常重要。

    3)实体

  b.HTTP响应(类似request)

    1)协议--状态吗--描述

    2)响应头

    空行

    3)相应实体段

4.Socket类

  套接字时网络连接的端点。套接字时应用程序可以从网络中读取数据,可以向网络中写入数据。在java中套接字由java.net.Socket表示。

  要创建一个套接字,可以使用Socket类中众多构造函数中的一个。其中一个构造函数接收两个参数:主机名和端口号。

    public Socket (String host,int port)

  其中,host时远程主机的名称或ip,port时连接远程应用程序的端口号。

tomcat1(servlet,http,socket)的更多相关文章

  1. Which is Better: Forms Servlet or Socket Mode?

    URL:http://blogs.oracle.com/stevenChan/2009/06/which_is_better_forms_servlet_or_socket_mode.html Man ...

  2. SSM配置Socket多线程编程(RFID签到实例)

    1.SocketServiceLoader.java package cn.xydata.pharmacy.api.app.test; import javax.servlet.ServletCont ...

  3. 关于javaweb 项目 ssm框架 启动tomcat服务器同时启动一个socket服务

    1.创建监听类 import javax.servlet.ServletContext; import javax.servlet.ServletContextEvent; import javax. ...

  4. socket 原理

    socket 原理 什么是socket 我们知道进程通信的方法有管道.命名管道.信号.消息队列.共享内存.信号量,这些方法都要求通信的两个进程位于同一个主机.但是如果通信双方不在同一个主机又该如何进行 ...

  5. 【转】Tomcat调优指南

    转载地址:http://blog.csdn.net/woohooli/article/details/3954792 1          概述 本文档主要介绍了Tomcat的性能调优的原理和方法.可 ...

  6. Tomcat优化详解

    1          概述         本文档主要介绍了Tomcat的性能调优的原理和方法.可作为公司技术人员为客户Tomcat系统调优的技术指南,也可以提供给客户的技术人员作为他们性能调优的指导 ...

  7. 49个Spring经典面试题总结,附带答案,赶紧收藏

    1. 一般问题 1.1. 不同版本的 Spring Framework 有哪些主要功能? Version Feature Spring 2.5 发布于 2007 年.这是第一个支持注解的版本. Spr ...

  8. Spring 面试问题 TOP 50

    Spring 面试问题 TOP 50 Spring Framework 现在几乎已成为 Java Web 开发的标配框架.那么,作为 Java 程序员,你对 Spring 的主要技术点又掌握了多少呢? ...

  9. Java面试中的Spring方面问题

    1.一般问题 1.1. 不同版本的 Spring Framework 有哪些主要功能? VersionFeatureSpring 2.5发布于 2007 年.这是第一个支持注解的版本.Spring 3 ...

随机推荐

  1. ECMA Script 6_symbol(symbol.iterator) 新接口_iterator接口

    iterator 接口 只要部署了 iterator 接口 symbol(symbol.iterator), 则可以进行 for...of  遍历

  2. STL中的二分查找

    本文转载于https://blog.csdn.net/riba2534/article/details/69240450 使用的时候注意:必须用在非递减的区间中 二分查找的原理非常简单,但写出的代码中 ...

  3. Win7 IIS配置

    一.首先,在开始打开你的控制面板 二.进入到控制面板,选择程序和功能,点击进入 三.在程序与功能中,左菜单栏,打开你的Windows工能 四.在Windows工能中,把你的Internet信息服务中的 ...

  4. 已知一个正整数m,编写一个程序求m的反序数(待消化)

    import java.util.Scanner; /** * @author:(LiberHome) * @date:Created in 2019/3/5 21:08 * @description ...

  5. kafka创建topics 错误: 找不到或无法加载主类 Files\Java\jdk1.7.0_80\lib;C:\Program

    解决方案如下: 在kafka安装目录中找到bin\windows目录中的kafka-run-class.bat找到%CLASSPATH%为其加上双引号

  6. snmp简单测试

    一.环境搭建 搜索windows Server2003安装配置snmp 服务,按照提示来就行 二.利用 1.找出Coummunity Strings 利用于 auxiliary/scanner/snm ...

  7. PHP算法学习(3) 冒泡排序

    2019年1月15日10:49:52 <?php /* * 冒泡排序 */ class BubbleSort { /* * 基础排序 */ public static function Basi ...

  8. [Day23]IO(字节流、字符流)

    1.字节流 1.1 字节输出流OutputStream-抽象类,表示输出字节流的所有类的超类 (1)void close() 关闭此输出流并释放与此流相关的所有系统资源 (2)void flush() ...

  9. Mysql5.8解压版安装问题:TCP/IP, --shared-memory, or --named-pipe should be configured on NT OS

    问题描述: cmd显示如下: .err文件显示: [ERROR] [MY-010131] [Server] TCP/IP, --shared-memory, or --named-pipe shoul ...

  10. Java博客目录

    JavaWeb 1.Tomcat使用 2.Servlet入门 3.JSP&EL&JSTL 4.Listener&Filter Java框架 Hibernate 1.简介及初使用 ...