chap2 HTTP和servlet基础

chap2 HTTP和servlet基础
2.1 HTTP请求/响应(request/response)模型
(1)client不光是浏览器,还包括pda,手机等
(2)client与server基于http协议进行通讯
(3)jsp基于java servlet技术,因此需要了解servlet
(4)http模型:client向server发送request请求resource,server发回response(请求的资源或错误消息)
(5)http模型的三大特点:无状态性;不能立即反馈(注:Web application不等于c/s application);不能告诉server关于request如何产生的信息。第1个问题如何解决,见chap10;第2、3问题,见chap16(客户端代码,eg.JavaScript或Java applet)
(6)URL:server名称+端口号+resource:eg.www.google.com:80/index.html
(7)http request消息:request line + request header (+ request body)
(8)request line:request method name + resource identifier + protocol version
(9)request header:供server使用的额外信息
(10)request body:只用于某些类型的请求,例如post
(11)User-Agent可供server根据不同的浏览器返回不同的信息
(12)URI不一定仅对应服务器上的静态文件。它还可能标识可执行程序、数据库记录或server知道的任何事情。
(13)response message:status line + response header (+ optional body)
(14)status line: 协议名称+状态代码+状态代码的简短描述
(15)请求参数:可以通过两种方式传递1>附加在URI上的查询字符串2>作为request message body的一部分传递
(16)查询字符串:?+“名字/值”对,用&分隔
(17)GET与POST的最大区别:GET总是使用查询字符串来传递参数,POST将参数作为body的一部分传递。
2.2 Servlet
(1)jsp specification基于java servlet specification
(2)servlet:向(web)server增加了新功能的一段代码
(3)servlet的优势:1>跨平台 2>与java其它技术(jdbc、ejb等等)集成 3>高效性(Servlet执行进程直到基于该servlet的应用程序被关闭后才终止;在该进程中,每个servlet请求被作为一个单独的进程执行) 4>scalability 5>健壮性和安全性(但如同任何动态web网站一样,基于servlet的网站易受"cross site scripting"袭击)
(4) servlet container是web server与servlet之间的连接。它为server上的所有servlet提供了运行时环境,并适时加载并激活这些servlet.
(5)过程:当容器收到第一次对某个servlet的请求时,加载该servlet类,使其初始化,再使它处理请求。对于以后的请求,使用同一个初始化的servlet,直至server关闭。容器接着给servlet一个释放资源和保存状态的机会。
(6)servlet container的类型:add-ons(plug-ins);standalone server;embedded
(7)请求被servlet处理后,容器负责把servlet创建的响应转换成http响应消息,并传给client.
(8)Java web应用程序通常是由下列类型的资源组成的:jsp页面,servlet,applet,静态html页面,自定义的tag库,其它java class文件。
(9)web archive(war):将部署描述器和其它web应用程序文件集合在一起。
(10)server context:在容器中,每个应用程序用一个servlet context表示。
(11)context path: 每个server context都有一个唯一的URI路径前缀,即context path。[作用]容器可以据此区分不同的应用程序,并把不同的request分发给不同的应用程序。
(12)path-mapping:除去context path,剩余的URI路径用于在选择的context中,通过将其与deployment descriptor定义的path-mapping规则进行比较,来决定如何处理请求。
(13)context-relative路径:每个context都是自包含的,对同一个容器中的其他应用程序一无所知。servlets与jsp页面之间的引用通常与context path有关,因此被称作context-relative路径。通过在应用程序中使用context-relative路径,web 应用程序可以使用任何context path来部署。
(14)context可以包含程序中所有组件共享的对象(例如数据库连接)。
(15)servlet规范的三大重要组成部分:web应用程序结构;部署文件的格式;组件之间共享对象的能力。[注]这也应用于jsp。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值