Servlet&JSP 第三章 请求与响应

本文详细介绍了Servlet中的doXXX方法,讲解了如何处理HTTP各种请求方式。重点解析了HttpServletRequest,包括处理请求参数、标头、上传文件以及使用RequestDispatcher调派请求。此外,还探讨了HttpResponse的使用,如设置响应标头、缓冲区和输出字符。
摘要由CSDN通过智能技术生成

一、doXXX()方法

1、HTTP定义了GET、POST、PUT、DELETE、HEAD、OPTIONS、TRACE等请求方式,HttpServlet中对应的方法有:

(1)doGet():处理HTTP GET请求

(2)doPost():处理HTTP POST请求

(3)doPut():处理HTTP PUT请求

(4)doDelete():处理HTTP DELETE请求

(5)doHead():处理HTTP HEAD请求

(6)doOptions():处理HTTP OPTIONS请求

(7)doTrace():处理HTTP TRACE请求

例1、如果在继承HttpServlet之后,没有重新定义doGet()方法,而客户端对Servlet发出了GET请求,则会收到错误信息。

2、对于GET请求,service()方法可以实现getLastModified()方法(默认返回-1,也就是默认不支持if-modified-since标头),来决定是否调用doGet()方法,getLastModified()方法返回自1970年1月1日凌晨至资源最后一次更新期间所经过的毫秒数,返回的这个时间如果晚于浏览器发出的if-modified-since标头,才会调用doGet()方法。

二、关于HttpServletRequest

  当HTTP转发给Web容器处理时,Web容器会收集相关的信息,并产生HttpServletRequest对象,可以通过这个对象取得HTTP请求中的信息,可以在Servlet中进行请求的处理,或是将请求转发(或包含)另一个Servlet/JSP进行处理,各个Servlet/JSP在同一请求周期中所需共享的资料,则可以设置在请求对象中成为属性。

1、处理请求参数与标头

请求来到服务器时,Web容器会创建HttpServletRequest实例来包装请求中的相关信息,HttpServletRequest定义了取得一些通用请求信息的方法。

可以使用以下方法来取得请求参数:

(1)getParameter():指定请求参数名称来取得对应的值,返回的是String对象,若传来的是像“123”这样的字符串值,而需要的是基本数据类型,则必须使用Integer.parseInt()这类的方法将它剖析为基本类型,若请求中没有所指定的请求参数名称,则会返回null。

例2、String username=request.getParameter(“name”);
(2)getParameterValues():如果窗体上有可复选的元件,如复选框、列表等,则同一个请求参数名称会有多个值(此时的HTTP查询字符串其实就是像param=10&param=20&param=30),此时可以用getParameterValues()方法取得一个String数组,数组元素代表所有被选取选项的值。

例3、String[] values=request.getParameterValues("param");
如果想要知道请求中有多少请求参数,则可以使用getParameterNames()方法,这时就会返回一个Enumeration对象,其中包括所有的请求参数名称。

例4、Enumeration<String> enum=request.getParameterNames();
(3)getParameterMap():将请求参数以Map对象返回ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值