1. Servlet容器为JavaWeb应用提供运行时环境,它负责管理Servlet和JSP的生命周期,以及管理他们的共享数据。
  2. Servlet容器也称JavaWeb应用容器,或者Servlet/JSP容器。
  3. 目前最流行的Servlet容器包括:
    • Tomcat
    • Resin
    • .J2EE服务器(如weblogic)中也提供了内置的Servlet容器
  4. Tomcat
    • 是免费的开放源码的Serrvlet容器,有Apache、sun和其他的一些公司及个人共同开发而成,由于有了sun的参与与支持

      最新的Servlet和JSP规范总能在Tomcat中得到体现。
    • 其目录结构:

      bin:存放启动和关闭Tomcat的脚本文件

      conf:存放Tomcat服务器的各种配置文件

      lib:存放Tomcat服务器和所有的web应用程序需要访问的jar文件

      logs:存放Tomcat的日志文件

      temp:存放Tomcat运行时产生的临时文件

      webapps:当发布web应用程序时,通常把web应用程序的目录及文件放到这个目录下

      work:Tomcat将JSP产生的Servlet源文件和字节码文件放到这个目录下
    • 部署并启动tomcat服务器

      解压Tomcat压缩包到非空目录下

      配置环境变量,java_home(指向jdk的根目录)或jre_home

      通过bin目录下的startup.bat启动服务器(若是启动窗口一闪而过)

      可以在浏览器中输入localhost:8080检验Tomcat是否安装成功

      若已经启动了一个Tomcat应用,再启动一个应用时就会抛出异常(java.net.BindException:

      Address already in use:JVM_Bind:8080)这是因为已经启动过一个应用程序,8080端口被占用了。
    • 启动或关闭

      方法一:双击bin目录下的startup.bat,运行shutdown.bat关闭开启,

      方法二:若是想在命令提示符中bin目录下运行,需要配置环境变量JAVA_HOME=C:\Program Files\Java\jdk1.7.0_67

      方法三:若是想在命令提示符中任意目录下运行,需要两步,一:把apache安装路径E:\briup\apache-tomcat-7.0.55\bin添加加到path中

      二:新建一个环境变量catalina,值为E:\briup\apache-tomcat-7.0.55

      方法四:若是想在当前窗口运行tomcat,使用命令catalina run,关闭使用ctrl+c。

      注意catalina命令有一下可选参数:

      commands:

      debug Start Catalina in a debugger

      debug -security Debug Catalina with a security manager

      jpda start Start Catalina under JPDA debugger

      run Start Catalina in the current window

      run -security Start in the current window with security manager

      start Start Catalina in a separate window

      start -security Start in a separate window with security manager

      stop Stop Catalina

      configtest Run a basic syntax check on server.xml

      version What version of tomcat are you running?
    • 修改端口号

      在conf目录下,打开server.xml,在67多行,找到
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>

5 . HTTP协议

  • 介绍:Web浏览器和Web服务器之间的一问一答的交互过程,必须遵循一定的规则,这个规则就是HTTP协议。

    HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议集中的一个应用层协议,用于定义

    Web浏览器与web服务器之间交换数据的过程以及数据本身的格式。

    HTTP协议版本:HTTP/1.0、HTTP/1.1、HTTP/NG

  • 会话方式

    建立链接

    发出请求信息

    回送应信息

    关闭链接

    浏览器与web服务器之间的所有的通信都是完全独立分开的请求和响应对

  • HTTP请求消息结构

    一个请求行、若干消息头、以及实体内容,其中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。
  • get请求和post请求

    响应消息的实体内容就是网页文件的内容,也就是在浏览器中使用查看源文件的方式所看到的内容,一个使用get方式的请求

    消息中不能包含实体内容,只有使用post、put和delete方式的请求消息中才可以包含实体内容 。

    get

    在浏览器中输入某个URL地址,或者单击某个超链接时浏览器发送的HTTP请求消息的请求方式为GET请求,超链接是一个get请求。

    或者在form表单中method属性的值设置为get,浏览器提交的这个请求也是get请求

    get方式特点:传送的数据量有限制的,一般限制在1Kb以下,get请求把请求参数附着在url后边用问号连接

    get方式传递参数格式:

    http://localhost:8080/Demo4/loginServlet?user=tengpengfei&password=817425

    post

    post请求方式主要用于向web服务器端程序提交form表单中的数据,post请求方式将各个表单字段元素,以及数据作为HTTP消息的实体内容发送给web服务器。

    form表单指定请求方式为post时

    post方式特点:比get方式传送的数据量要大得多。

Servlet(1)—Servlet容器tomcat和HTTP协议的更多相关文章

  1. 对于Servlet、Servlet容器以及一个Servlet容器-Tomcat

    Servlet.Servlet容器等内容讲解 转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的 ...

  2. Servlet容器Tomcat中web.xml中url-pattern的配置详解[附带源码分析]

    目录 前言 现象 源码分析 实战例子 总结 参考资料 前言 今天研究了一下tomcat上web.xml配置文件中url-pattern的问题. 这个问题其实毕业前就困扰着我,当时忙于找工作. 找到工作 ...

  3. HTTP协议 Servlet入门 Servlet工作原理和生命周期 Servlet细节 ServletConfig对象

    1 HTTP协议特点   1)客户端->服务端(请求request)有三部份     a)请求行--请求行用于描述客户端的请求方式.请求的资源名称,以及使用的HTTP协议版本号 请求行中的GET ...

  4. Servlet、Servlet容器等内容讲解

    转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的挺清晰的,转载下 之前在开源中国看到一篇文章& ...

  5. Servlet 和 Servlet容器

    Servlet 很多同学可能跟我一样始终没有搞清楚到底什么是 Servlet,什么是 Servlet 容器.网上看了很多帖子,或许人家说的很清楚,但是自己的那个弯弯就是拐不过来. 想了很久说一下自己的 ...

  6. JAVA网络编程基本功之Servlet与Servlet容器

    Servlet与Servlet容器关系 Servlet 比较这两个的区别, 就得先搞清楚Servlet 的含义, Servlet (/ˈsərvlit/ ) 翻译成中文就是小型应用程序或者小服务程序, ...

  7. Java Servlet与Web容器之间的关系

    自从计算机软件开发进入网络时代,就开始涉及到通讯问题.在客户/服务器(也叫C/S应用)时期,每个软件都有自己的客户端和服务器端软件.并且客户端和服务器端之间的通讯协议差别也很大.后来随着互联网的发展, ...

  8. 【Java】servlet和servlet 容器

    servlet不是线程安全的,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,所以你的项目中如果只有一个servlet,那么web容器就只会创建一个实例 ...

  9. JavaWeb开发之详解Servlet及Servlet容器

    自JavaEE诞生伊始,Servlet容器和Servlet技术,就构成了JavaEE应用的核心,配合其它组件,它们完善了Java企业级开发的全套解决方案.小到一个静态博客网站,大到分布式的集群应用,都 ...

随机推荐

  1. [转]Xshell在按delete,backspace键产生乱码(不可用)的解决方法

    Xshell在按delete,backspace键产生乱码的解决方法 当我们用Xshell登录进入linux后,在普通模式下,对输入进行删除等操作没有问题. 而在运行中,按delete,backspa ...

  2. Coolpy网络部署说明(宽带互联网)

    本文将介绍Coolpy第二种方案的网络部署方法.以方便大家学习如何让coolpy设备部署到相应的应用场景中.本例将以水星MW310R无线路由器作为演示路由器. 1.硬件连接部分: coolpy设备=& ...

  3. 常见内网IP段

    以下IP段为内网IP段: 192.168.0.0 - 192.168.255.255 172.16.0.0 - 172.31.255.255 10.0.0.0 - 10.255.255.255

  4. 040 Http与RPC

    一直在说,但是没有系统的文档理解过. 1.本质 目前有很多Java的RPC框架,有基于Json的,有基于XML,也有基于二进制对象的. 他们最本质的区别,就是RPC主要是基于TCP/IP协议的,而HT ...

  5. 牛客练习赛 26 B题 烟花【DP】(经典)

    <题目链接> 题目描述 小a有个烟花,每个烟花代表着互不相同的颜色,对于第个烟花,它有的概率点燃,现在小a要去点燃它们,他想知道产生颜色的期望个数 及 产生恰好产生种颜色的概率 输入描述: ...

  6. python爬取今日头条关键字图集

    1.访问搜索图集结果,获得json如下(右图为data的一条的详细内容).页面以Ajax呈现,每次请求20个图集,其中 title --- 图集名字 artical_url --- 图集的地址 cou ...

  7. Shell学习之结合正则表达式与通配符的使用(五)

    Shell学习之结合正则表达式与通配符的使用 目录 通配符 正则表达式与通配符 通配符 通配符的使用 正则表达式 正则表达式 正则表达式的使用 通配符 正则表达式与通配符 正则表达式用来在文件中匹配符 ...

  8. Rendering React components to the document body

    React一个比较好用的功能是其简单的API,一个组件可以简单到一个return了组件结构的render函数.除了一个简单的函数之外,我们还有了一段有用且可复用的代码片段. 问题 不过有时候可能会受到 ...

  9. 声明式调用---Feign

    Feign:Feign是一种声明式.模板化的HTTP客户端. 用我的理解来说,Feign的功能类似dubbo暴露服务,但是与dubbo稍有不同的是Feign是HTTP REST接口的形式暴露的. 这一 ...

  10. 英语口语练习系列-C25-冒险-课堂用语-葬我

    词汇-冒险 adventure noun [ C or U ] UK /ədˈven.tʃər/ US /ədˈven.tʃɚ/ an unusual, exciting, and possibly ...