一,SERVLET 作用
读取客户程序发送来的显式数据(表单数据);
读取客户程序发送来的隐式数据(请求报头);
生成相应的结果;
发送显式的数据给客户程序(HTML);
发送隐式的数据给客户程序(状态代码和响应报头);
优点:高效,便利,功能强大,可移植性强,花费少,安全
二,SERVLET 生命周期
init:仅在servlet首次载入时执行一次。不是每次请求都要调用。
service:在新线程中由服务器为每个请求而调用。发送到doGet,doPost等。不要覆盖这个方法!
doGet, doPost, doXxx:处理GET, POST, 等请求。覆盖这些方法以提供期望的行为。
destroy:在服务器删除servlet的实例时调用。不是每次请求后都调用。
三,例子
下面是看《Servlet与JSP核心编程第二版》测试例子;
给大家推荐一个网站:
http://chinesedocument.com/
看名字就应该知道关于什么的了,上面东西挺多的,不错;
说明:
chapter2,chaper3:servlet基础,请求参数;
chapter4:request请求头查看,post,get方式;
chapter5: 简单搜索引擎前端,sendError,sendRedirect测试;测试用例:
“http://www.google.cn/search?q=” “sendRedirect”
chapter6:ContentType测试
chapter7:cookie测试,servlet:RegistrationForm 简单注册页面,,使用cookie的值预先填写表单的 字段,如果未找到相应的cookie则使用默认值;Registration servlet:基于接收到的请求参数创建cookie,如果得到所有的参数则显示这些值,如果任何参数缺失,则重定向到表单;
chapter8:session实现一个简单购物车;流程:登陆(Login servlet)--商品列表(ShopForm servlet)<---->挑选(AddItem servlet)
测试工程
servlet.rar
由于jar文件太大,工程中没有jar保,可自己添加;
工程中用到有:servlet-api.jar,dom4j-1.6.1.jar,jaxen-1.1-beta-6.jar,pull-parser-2.1.10.jar,jaxme-api-0.3.jar,jsr173_1.0_api.jar,msv-20030807.jar,relaxngDatatype-20030807.jar,isorelax-20030108.jar,jtidy-4aug2000r7-dev.jar,xsdlib-20030807.jar,xpp3-1.1.3.3.jar
由于购物车中用到了解析xml,所以Jar包一下就多了;
购物车没有数据库,我用dom4j解析xml,然后把数据存放在session中,觉得很别扭;对dom4j不是很熟悉,解析那部分做的不好,大家给多提提意见;书中有个refresh例子,还没看明白;说看明白实现了给我发一份啊;