- 浏览: 115421 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
lintaozhou:
这个file里存放是Map中的数据吗?
JDBM4(MapDB)性能测试 -
在世界的中心呼喚愛:
写入时间应该不准确
JDBM4(MapDB)性能测试 -
huangjun_mail:
tuti 写道你都是怎么学习的呀每个人的学习方法不一样。我目前 ...
连续坚持英语学习31天,希望一直坚持下去! -
fish:
《Teach yourself English in 31 d ...
连续坚持英语学习31天,希望一直坚持下去! -
tuti:
你都是怎么学习的呀
连续坚持英语学习31天,希望一直坚持下去!
一 简述
Servlet是java平台的一项服务器技术,它封装了HTTP协议,并制定了Servlet API规范,可以使用Web开发人员在基于java平台
方便的编写服务器端程序。
二 HTTP 1.1协议
如果要深入了解Servlet必须要了解HTTP协议,在这里主要介绍一下,我们最常用的Reqeust和Response。
Request(HTTP请求)规范:
Request = Request-Line ; 请求行
*(( general-header ; 通用报头
| request-header ; 请求报头
| entity-header ) CRLF) ;
CRLF ;空行
[ message-body ] ; 消息体
请求行规范:
Request-Line =Method SP Request-URL SP HTTP-Version CRLF
Method:最主要用到的是GET 和 POST方法
Request-URL:URL地址
SP:空格
HTTP-Version:HTTP版本
CRLF:空行
通用头规范:
general-header = Cache-Control ; 缓存控制,如:public,private,no-cache,no-store
| Connection ; 持续性支持
| Date ;
| Pragma ;
| Trailer ;
| Transfer-Encoding ;
| Upgrade ;
| Via ;
| Warning ;
请求头规范:
请求头域允许客户端传递请求的附加信息和客户端自己的附加信息给服务器。这些头域作为请求的修饰符,
这和程序语言方法调用的参数语义是一样的。
request-header = Accept ;指定服务器返回给客户端可接受的响应媒体类型,如我们最常见的text/html类型
| Accept-Charset ;请求客户端能接受什么样的字符集响应,默认是ISO-8859-1
|Accept-Encoding ;服务器返回给客户端可以接受的内容编码,如,compress, gzip
|Accept-Language ;
|Authorization ;
|Expect ;
|From ;
|Host ;
| If-Match ;
| If-Modified-Since ;判断请求变量(variant)自从此头域里指定的时间之后没有改变,
;修改了,那么服务器应该返回一个GET请求
| If-None-Match ;
| If-Range ;
| If-Unmodified-Since ;
| Max-Forwards ;
| Proxy-Authorization ;
| Range ;
| Referer ;自动刷新的URI和时间
| TE ;
| User-Agent ;用户代理的信息,通常是兼容的浏览器版本,以及浏览器必须要的平台
实体头规范:
entity-header = Allow ; 缓存控制,public,private,no-cache,no-store,must-revalidate,
;proxy-revlidate,max-age,s(hare)-max-age
| Content-Encoding ; 压缩方式
| Content-Language ;
| Content-Length ; 按十进制或八位字节数指明了发给给接收者的实体主体的大小
| Content-Location ; 消息里的实体提供对应资源的位置(跳转地址报头)
| Content-MD5 ;
| Content-Range ;
| Content-Type ;发给接收者的实体主体的媒体类型
| Expires ;
| Last-Modified ;最后修改时间。(If-Modified-Since)
| extension-header
extension-header = message-header
Reseponse(HTTP响应)规范
response =Status-Line ;状态行
*(( general-header) ;
| response-header ;响应头
| entity-header) CRLF);
CRLF
[ message-body ] ;
状态行规范:
Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF
Status-Code:状态代码
状态码的第一位数字定义响应类型。后两位数字没有任何分类角色。第一位数字有五种值:
-1xx: 报告的 - 接收到请求,继续进程.
-2xx 成功 - 步骤成功接收,被理解,并被接受
-3xx 重发 - 为了完成请求,必须采取进一步措施.
-4xx 客户端出错 - 请求包括错的顺序或不能完成.
-5xx 服务器出错 - 服务器无法完成显然有效的请求.
eason-Phrase:原因短语
响应头规范:
response-header = Accept-Ranges
|Age
|Etag
|Location
|Proxy-Autenticate
|Retry-After
|Server
|Vary
|WWW-Authenticate
详细规则,请参考RFC2612.
三 HTML
HTML语言是Web页面最终展现的形态,若要深入了解其它高级技术必须先知其根。
表单:
<FORM>
属性:action,method,enctype,traget,onsubmit,onreset,accept,accept-charset
文本控件:
(1)文本字段:<input type="TEXT">无结束标签
name,value,size,maxlenght,onChange,onSelect,onFocus,OnBlur,OnKeyDown,OnKeyPress,OnKeyUp
(2)密码域:<input type="password">无结束标签
(3)文本区域:
<TEXTAREA NAME="..." ROW=XXX COLS=YYY>
</TEXTAREA>
按钮
(1)提交按钮
<1><input type="submit" ...>没有结束标签
name,value,onclick,onDBclick,onFocus,onBlur
<2><button type="submit"...>
html标记
</button>
(2)重置按钮
<1><input type="reset"...>没有结束标签
<2><button type="reset">
</button>
(3)JavaScript按钮
(1)<input type="button" ...>没有结束标签
(2)<button type="button"></button>
复选框和单选按钮
(1)<input type="CheckBox" name="..." ...>没有结束标签
属性:NAME,VALUE,CHECKED,ONCLIKE,ONFOUCUS,ONBLURE
只有在复选框选定的情况下,它的名/值对彩绘被表单提交的服务器上去。
(2)<input type="radio" name="..." value="...">没有标签name,value,checked,onclike,onfocus,onblur
组合框和列表框
(1)<select name="..."...> </select>
属性:name,size,multiple,onclick,onfocus,onblur,onchange
(2)<option ...>结束标签可选
selected,value
<optgroup lable="..." ...>...</optgroup>
文件上传控件
<input type="file" ...>没有结束标签
name,value,size,maxlength,accept,onchange,onselect,onfocus,onblur
<form enctype="multipart/form-data" mothod="post">
<input type="file" name="..." ...>
</form>
服务器端图像映射
<input type="image" name="myMap1"..>没有结束标签
属性:name,src,align
传递参数myMap1.x=xx myMap1.y=yy(相对于图像左上角的坐标)
ISMAP属性(<IMG>)(相对于图像左上角的像素)
<A HREF="http://localhost:8088/somepage"
<img src="..." width=ww height=hh alt="xx" border=0 ISMAP>
</A>
<IMG SRC="solarsys.gif" WIDTH=504 HEIGHT=126 BORDER=0 ALT="太阳系" USEMAP="#SystemMap">
<MAP NAME="SystemMap">
<AREA SHAPE="rect" COORDS="0,0,82,126" HREF="/workshop/graphics/sun.gif">
<AREA SHAPE="circle" COORDS="90,58,3" HREF="/workshop/graphics/merglobe.gif">
<AREA SHAPE="poly" COORDS="221,34,238,37,257,32,278,44,284,60,
281,75,288,91,267,87,253,89,237,81,229,64,228,54" HREF="/workshop/graphics/jupglobe.gif">
</MAP>
如果只是用服务器端图像映射选取一系列静态的制定URL中的某个URL,
那么客户端MAP元素是更优的选择,因为采用客户端MAP元素时,在确定
使用那个URL时不需要服务器。
如果计划将其他输入元素与图像映射一同使用,那么IMAGE输入类型更
为适合。
但是对于独立的图像映射,如果与URL相关连的区域不断变化或需要计算得出
那么使用ISMAP的图像更合理。
隐藏域
<input type="hidden" name="..." value="..."> 没有结束标签
控件组
<FIELDSET>
<LEGEND ALIGN="RIGHT">
Group Two
</LEGEND>
Field 2A: <INPUT TYPE="TEXT" NAME="field2A" VALUE="Field A"><BR>
</FIELDSET>
发表评论
-
JDBM4(MapDB)性能测试
2013-09-14 21:46 8677最近需要一个大Map保存大量KV,找了一下最新的JDBM4 ... -
xfire传输自定义对象遇到的问题
2010-09-21 14:01 1895这几天,项目中的两个子系统交互用到了webservi ... -
MyEclipse8.0GA 自动生成到MyEclipse8.5的问题解决。
2010-06-05 10:11 1491昨晚,自动更新了MyEclipse8.0GA,更新完 ... -
小型Web服务器实现
2010-05-31 22:56 1083相信很多朋友都读过《Core Servlets and JSP ... -
浏览器upload文件到Web服务器
2010-05-31 20:19 913前段时间写了一个IC卡读写COM组件,这个组件可以把 ... -
DES加密/解密文件
2010-05-31 17:50 1564最近在工作中,需要加密/解密一个数据文件,本来准备用目前 ... -
effective java
2009-06-18 21:20 1035今天了解了 ... -
负数的二进制表示方法
2009-08-06 21:15 4447今天在看base64编码转换 ... -
Java Core II 读书笔记(一)多线程
2009-09-01 22:57 7281多线程 线程的状态:New 、Runnable、Bloc ... -
Java Core II 读书笔记(二)集合框架
2009-09-02 20:35 884集合框架 概述:如果熟悉C++ STL 的朋友肯定会发现 Ja ... -
Java Core II 读书笔记(三)网络
2009-09-03 22:57 7383网络API 概述: 对于网络的实现,java支持Socket ... -
Core Servlets and JSP Volume I 读后感 开发环境配置(二)
2009-11-05 21:31 670基于Tomcate的Web服务器的开发环境配置 1. jdk ... -
Core Servlets and JSP Volume I 读后感 Servlet(三)
2009-11-05 21:32 806一 Servlet工作 (1) 接收客户端显示数据, ... -
Core Servlets and JSP Volume I 读后感 JDBC(五)
2009-11-05 21:34 400访问数据库过程: (1)Load JDBC驱动 (2)建立数据 ... -
Core Servlets and JSP Volume I 读后感 JSP(四)
2009-11-05 21:34 944一 概述 jsp其实就是Servlet的另外一种表达方式, ... -
集合组合算法
2010-03-14 22:47 1016//设计算法以求解从集合{1..n}中选取k(k<=n) ... -
Hibernate理解
2010-04-05 19:15 789概述: Hibernate是一个纯Object Relat ... -
用java语言实现单链表
2010-05-16 09:39 8991 package com.base.list; 2 ...
相关推荐
Core Servlets and JavaServerPages Volume 1 2nd Edition 英文原版 卷1 第二版
Core Servlets and JavaServer Pages: Volume 1
Servlet与JSP核心编程第二版第一卷英文版,Core Servlets and JavaServer Pages(Volume.1 .2nd.Edition),自己制作的,中英文对照着看。
Pages, Volume 1: Core Technologies, covers the servlet and JSP capabilities that you are likely to use in almost every real-life project. This book, Volume 2: Advanced Technologies, covers features ...
Prentice Hall Core Servlets And Javaserver Pages Advanced Technologies Volume 2.2Nd Edition Dec 2007.pdf volume II, 2008年出版, pdf格式, 英文, ISBN:0-13-148260-2 Servlet 2.4/JSP 2.0
Servlet与jsp核心技术第二版上下卷合订本,其中第二卷为2007年出版的.part1
Servlet与jsp核心技术第二版上下卷合订本,其中第二卷为2007年出版的。英文原版。(分卷2)
Servlets和JSP核心技术 卷2 内容还是很详细的,看过卷1的人可以继续用这本书深造,呵呵 目录: Chapter 1. Using and Deploying Web Applications Section 1.1. Purpose of Web Applications Section 1.2. ...
Prentice.Hall.Core.Servlets.and.JavaServer.Pages.Advanced.Technologies.Volume.2.2nd.Edition.Dec.2007.chm chm版的方便查询,有3个包 sun官方servlet&jsp进阶版 需要的同学就下吧
Prentice.Hall.Core.Servlets.and.JavaServer.Pages.Advanced.Technologies.Volume.2.2nd.Edition.Dec.2007.chm chm版的方便查询,有3个包 sun官方servlet&jsp进阶版 需要的同学就下吧
Prentice.Hall.Core.Servlets.and.JavaServer.Pages.Advanced.Technologies.Volume.2.2nd.Edition.Dec.2007.chm chm版的方便查询,有3个包 sun官方servlet&jsp进阶版 需要的同学就下吧
JSP是一种如日中天的新型Internet/Intranet开发语言,可以在多种操作系统平台和多种Web服务器下使用。本书从最基础的JSP开发开始,循序渐进地介绍了JSP 开发技术,并涵盖了许多高级主题,如需要在企业级Web应用中...