1.对XML文件的解析(DOM/SAX)
解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构。优点:整个文档树在内存中,便于操作;
支持删除、修改、重新排列等多种功能;缺点:将整个文档调入内存(包括无用的节点),浪费时间和空间;使用场合:一旦解析了文档还需多次访问这些数据;
硬件资源充足(内存、CPU)。
SAX ,事件驱动。当解析器发现元素开始、元素结束、文本、文档的开始或结束等时,发送事件,程序员编写响应这些事件的代码,保存数据。优点:不用事先调入整个文档,占用资源少;
SAX解析器代码比DOM解析器代码小,适于Applet,下载。缺点:不是持久的;事件过后,若没保存数据,那么数据就丢了;无状态性;从事件中只能得到文本,但不知该文本属于哪个元素;
使用场合:Applet;只需XML文档的少量内容,很少回头访问;机器内存少;
2. HTTP响应:一个状态行 若干响应头 以及实体内容
HTTP/1.1 200 OK状态行用于描述服务器对请求的处理结果
格式:HTTP版本号 状态码 原因叙述<crlf>
状态码:200(表示成功接收请求并且已经完成了处理的过程)
302请求的资源已经移动新的地址
304 307回复一个缓存,回复给客户机去拿缓存
404客户端的请求有错误 (403密码错误,客户机没有访问的权限)
500 代表服务器端出现错误了
响应头:(服务器在会送数据的时候,服务器通过响应头,可以控制浏览器的行为(直接网页浏览还是需要下载))
Http响应的细节:常用的响应头
Location:这个头配合302状态码使用,用于告诉客户机找谁,实现请求的重定向
Server:服务器通过这个头告诉浏览器服务器的的类型
Content-Encoding服务器通过这个头,告诉浏览器数据的压缩格式******压缩会提高页面的访问性能;而且电信会通过门户的出口流量来收费,所以最好压缩来降低成
HTTP协议:
meta是什么?meta其实是html语言head区的一个辅助性标签。在几乎所有的网页里,我们都可以看到类似下面这段html代码:<META http-equiv=Content-Type content="text/html; charset=gb2312">
有人要说,这段代码好象可有可无,没有多大实际作用嘛!其实不是没用,而是你没有用好meta标签。为什么这样说呢?这是因为meta标签有许多参数,使用不同的参数就可以使主页实现不同的功能,例如用于鉴别作者,设定页面格式,标注内容提要和关键字,以及刷新页面等等!下面就让我们一起来揭开meta标签的神秘面纱吧!
一、语法:
<meta name="name" content="string">
二、参数解析:
1)name项:常用的选项有Keywords(关键字) ,description(网站内容描述),author(作者),robots(机器人向导)等。
2)http-equiv项:可用于代替name项,常用的选项有Expires(期限),Pragma(cache模式),Refresh(刷新),Set-Cookie(cookie设定),Window-target(显示窗口的设定),content-Type(显示字符集的设定)等。
3)content项:根据name项或http-equiv项的定义来决定此项填写什么样的字符串。
1、告诉浏览器网页所识别的文件类型及语言类型,比如说,我们要让浏览器识别HTM/HTML类型的简体中文网面,我们可以这样写:
< Meta http-equiv="Content-Type" content="text/html; charset=gb2312" >
2、让一些搜索引擎搜索到你的网页,代码可以这样写:
< Meta Name=" Keywords" Content="网页关键字" >
< Meta Name=" description" Content="网页描述文字" >
要达到自动搜索引擎真正能方便地搜索到你的网页还得注意以下几点:
A、既要定义meta标记项,又要将首页正文的前200个字符定义成反映主页主题的文字。因为有些导航台在标引meta项中的关键词的同时,还要标引正文中的前200个字符。如:altavista。所以,有些人在注册完导航台后去检查注册结果时,发现导航台中的描述并不是你所希望的,而是诸如版权说明之类的文字。产生这一现象的原因就是没有注意到这一点。
B、将定义关键词的meta标记项放在定义描述的meta项之前。如:
<meta type="keywords" content=".......,...,...">
<meta type="description" content="...,....,...">
C、将最重要的关键词放在最前面,让相关的关键词相邻。全小写与首字母大写并存,因为有的导航台在标引时对字符的大小写是敏感的。包括标点符号不要超过250个单词
D、首页最好不用frame结构,因为frame将屏幕划分成多个窗口后,导航台不能智能地选择正确的窗口中的主页去标引。
3、让一个页面过上一定的时间,自动转到另一个页面或者站点去,如:
< Meta HTTP-EQUIV="refresh" content="6; url= http://fym888.nease.net" >
content中的6表示时间,单位为秒,url=后面是你要转向的网址,若是与你当前网页在同一目录下,可以直接写上文件名,如:
< Meta HTTP-EQUIV="refresh" content="6; url=page1.htm" >
4、让网页每隔一段时间刷新一次,若要10秒刷新一次,代码这样写:
<meta http-equiv="refresh" content="10">
5、通过Meta可以让你进入页面时产生一些特殊效果,具体应用如下:
< meta http-equiv="Page-Enter" content= "revealTrans(Duration=5.0,Transition=n)" > 其中,n的取值范围为0-23,具体的意义如下:
0 矩形缩小 1 矩形扩大 2 圆形缩小
3 圆形扩大 4 下到上 5 上到下
6 左到右 7 右到左 8 竖百叶窗
9 横百叶窗 10 错位横百叶窗 11 错位竖百叶窗
12 点 13 左右到中间 14 中间到左右
15 中间到上下 16 上下到中间 17 右下到左上
18 右上到左下 19 左上到右下 20 左下到右上
21 横条 22 竖条 23 以上 24种随机选择一种
6、标注作者:
<meta name="author" content="黄山村夫—安徽新建基础工程有限责任公司">
7、控制页面缓冲,如不要页面缓冲的代码这样写:
<meta http-equiv="Cache-Control" CONTENT="no-cache">
其它还有一些,不过不常用。
session/cookie:
Session的实现原理,基于cookie,服务器为一个浏览器创建session的时候,就会为这个session创建一个id号,从而通过cookie返回给浏览器,在浏览器下次访问的时候,就会带着各自的cookie,从而找到自己对用的session。
但是在这个里面,cookie的有效期就是关闭网页。
要做电子商务网站的话:需要解决“关闭了浏览器,重新打开,所需的商品亦然存在。”参见例子。。。;
当关闭cookie之后,需要重写url来标记session;
4、 jsp显示数据的两门技术:EL表达式和JSTL标签(快速入门)
××××××××Sun公司的标签库:jstl标签库
C:Foreach的应用:一个是用于迭代 另一个是做页码:
<c:foreach var=”num” begin=”1” end=”9” step=”1”>
${num}
</c:foreach>
还可以做出间色技术 参照视频
<c:url>重点:用在url的重写上面---在cookie禁止的时候,就没法把session带给用户的浏览器。此时就要重写url,在url+随机数,来标识用户的浏览器。
<c:url var=”url” value=”/day11/xx”/>
<a href=”${url}”>购买</a>
解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构。优点:整个文档树在内存中,便于操作;
支持删除、修改、重新排列等多种功能;缺点:将整个文档调入内存(包括无用的节点),浪费时间和空间;使用场合:一旦解析了文档还需多次访问这些数据;
硬件资源充足(内存、CPU)。
SAX ,事件驱动。当解析器发现元素开始、元素结束、文本、文档的开始或结束等时,发送事件,程序员编写响应这些事件的代码,保存数据。优点:不用事先调入整个文档,占用资源少;
SAX解析器代码比DOM解析器代码小,适于Applet,下载。缺点:不是持久的;事件过后,若没保存数据,那么数据就丢了;无状态性;从事件中只能得到文本,但不知该文本属于哪个元素;
使用场合:Applet;只需XML文档的少量内容,很少回头访问;机器内存少;
2. HTTP响应:一个状态行 若干响应头 以及实体内容
HTTP/1.1 200 OK状态行用于描述服务器对请求的处理结果
格式:HTTP版本号 状态码 原因叙述<crlf>
状态码:200(表示成功接收请求并且已经完成了处理的过程)
302请求的资源已经移动新的地址
304 307回复一个缓存,回复给客户机去拿缓存
404客户端的请求有错误 (403密码错误,客户机没有访问的权限)
500 代表服务器端出现错误了
响应头:(服务器在会送数据的时候,服务器通过响应头,可以控制浏览器的行为(直接网页浏览还是需要下载))
Http响应的细节:常用的响应头
Location:这个头配合302状态码使用,用于告诉客户机找谁,实现请求的重定向
Server:服务器通过这个头告诉浏览器服务器的的类型
Content-Encoding服务器通过这个头,告诉浏览器数据的压缩格式******压缩会提高页面的访问性能;而且电信会通过门户的出口流量来收费,所以最好压缩来降低成
HTTP协议:
meta是什么?meta其实是html语言head区的一个辅助性标签。在几乎所有的网页里,我们都可以看到类似下面这段html代码:<META http-equiv=Content-Type content="text/html; charset=gb2312">
有人要说,这段代码好象可有可无,没有多大实际作用嘛!其实不是没用,而是你没有用好meta标签。为什么这样说呢?这是因为meta标签有许多参数,使用不同的参数就可以使主页实现不同的功能,例如用于鉴别作者,设定页面格式,标注内容提要和关键字,以及刷新页面等等!下面就让我们一起来揭开meta标签的神秘面纱吧!
一、语法:
<meta name="name" content="string">
二、参数解析:
1)name项:常用的选项有Keywords(关键字) ,description(网站内容描述),author(作者),robots(机器人向导)等。
2)http-equiv项:可用于代替name项,常用的选项有Expires(期限),Pragma(cache模式),Refresh(刷新),Set-Cookie(cookie设定),Window-target(显示窗口的设定),content-Type(显示字符集的设定)等。
3)content项:根据name项或http-equiv项的定义来决定此项填写什么样的字符串。
1、告诉浏览器网页所识别的文件类型及语言类型,比如说,我们要让浏览器识别HTM/HTML类型的简体中文网面,我们可以这样写:
< Meta http-equiv="Content-Type" content="text/html; charset=gb2312" >
2、让一些搜索引擎搜索到你的网页,代码可以这样写:
< Meta Name=" Keywords" Content="网页关键字" >
< Meta Name=" description" Content="网页描述文字" >
要达到自动搜索引擎真正能方便地搜索到你的网页还得注意以下几点:
A、既要定义meta标记项,又要将首页正文的前200个字符定义成反映主页主题的文字。因为有些导航台在标引meta项中的关键词的同时,还要标引正文中的前200个字符。如:altavista。所以,有些人在注册完导航台后去检查注册结果时,发现导航台中的描述并不是你所希望的,而是诸如版权说明之类的文字。产生这一现象的原因就是没有注意到这一点。
B、将定义关键词的meta标记项放在定义描述的meta项之前。如:
<meta type="keywords" content=".......,...,...">
<meta type="description" content="...,....,...">
C、将最重要的关键词放在最前面,让相关的关键词相邻。全小写与首字母大写并存,因为有的导航台在标引时对字符的大小写是敏感的。包括标点符号不要超过250个单词
D、首页最好不用frame结构,因为frame将屏幕划分成多个窗口后,导航台不能智能地选择正确的窗口中的主页去标引。
3、让一个页面过上一定的时间,自动转到另一个页面或者站点去,如:
< Meta HTTP-EQUIV="refresh" content="6; url= http://fym888.nease.net" >
content中的6表示时间,单位为秒,url=后面是你要转向的网址,若是与你当前网页在同一目录下,可以直接写上文件名,如:
< Meta HTTP-EQUIV="refresh" content="6; url=page1.htm" >
4、让网页每隔一段时间刷新一次,若要10秒刷新一次,代码这样写:
<meta http-equiv="refresh" content="10">
5、通过Meta可以让你进入页面时产生一些特殊效果,具体应用如下:
< meta http-equiv="Page-Enter" content= "revealTrans(Duration=5.0,Transition=n)" > 其中,n的取值范围为0-23,具体的意义如下:
0 矩形缩小 1 矩形扩大 2 圆形缩小
3 圆形扩大 4 下到上 5 上到下
6 左到右 7 右到左 8 竖百叶窗
9 横百叶窗 10 错位横百叶窗 11 错位竖百叶窗
12 点 13 左右到中间 14 中间到左右
15 中间到上下 16 上下到中间 17 右下到左上
18 右上到左下 19 左上到右下 20 左下到右上
21 横条 22 竖条 23 以上 24种随机选择一种
6、标注作者:
<meta name="author" content="黄山村夫—安徽新建基础工程有限责任公司">
7、控制页面缓冲,如不要页面缓冲的代码这样写:
<meta http-equiv="Cache-Control" CONTENT="no-cache">
其它还有一些,不过不常用。
session/cookie:
Session的实现原理,基于cookie,服务器为一个浏览器创建session的时候,就会为这个session创建一个id号,从而通过cookie返回给浏览器,在浏览器下次访问的时候,就会带着各自的cookie,从而找到自己对用的session。
但是在这个里面,cookie的有效期就是关闭网页。
要做电子商务网站的话:需要解决“关闭了浏览器,重新打开,所需的商品亦然存在。”参见例子。。。;
当关闭cookie之后,需要重写url来标记session;
4、 jsp显示数据的两门技术:EL表达式和JSTL标签(快速入门)
××××××××Sun公司的标签库:jstl标签库
C:Foreach的应用:一个是用于迭代 另一个是做页码:
<c:foreach var=”num” begin=”1” end=”9” step=”1”>
${num}
</c:foreach>
还可以做出间色技术 参照视频
<c:url>重点:用在url的重写上面---在cookie禁止的时候,就没法把session带给用户的浏览器。此时就要重写url,在url+随机数,来标识用户的浏览器。
<c:url var=”url” value=”/day11/xx”/>
<a href=”${url}”>购买</a>