1. 请求对象相关的API (HttpServletRequest 对象)
与请求参数相关的方法
request 对象的主要用途是取得请求表单中的数据
String getParameter(String name);
//取得name 的参数值
Enumeration getParameterNameS();
//取得所有参数的名字
String[] getParameterValues(String name);
//取得所有name的参数值
Map getParameterMap();
// 取得所有参数的一个Map,key 为参数名字,值为参数的所有值组成的数组
与请求报头相关的方法
略。。
与范围操作相关的方法
略。。
2. 响应对象相关的API (HttpServletResponse 对象)
与相应报头相关的方法
略。。
与相应状态码相关的方法
略。。
非西文字符的乱码问题
request.setCharacterEncoding("UTF-8");
//在读取数据之前使用request 对象设定转换关系
respone.setCharacterEncoding("UTF-8");
或者:respone.setContentType("text/html:charset=UTF-8");
//数据返回给浏览器之前使用response 对象设定转换关系
3. Web 资源之间的3种关系
请求转发(内部转移)
浏览器请求了资源A,而资源A最终让资源B给浏览器构造响应(转移请求),这种情况下A和B之间的关系称作请求转发,A转发给了B
资源A和B 共享相同的request 和response 对象,浏览器地址栏不变
request.getRequestDispatcher(String url);
//使用javax.servlet.RequestDispatcher 实例的forward() 方法来实现
重定向 (内/外跳转)
浏览器请求了资源A,资源A给浏览器构造了响应,告诉浏览器去请求资源B
浏览器去请求资源B,最终从B得到了相应,浏览器地址栏改变为资源B 的URL
response.sendRedirect();
包含
浏览器请求了资源A,资源A在处理请求的过程中调用了资源B,获得资源B的结果与自己运行的结果放在一起
4. ServletContext 对象
ServletContext 对象是一个Web 站点的全局对象
在web.xml 文件中定义ServletContext 初始化参数的方法如下:
<context-param>
<param-name>param name</param-name>
<param-value>param value</param-value>
</context-param>
5. ServletConfig 对象
ServletConfig 对象是一个Servlet的配置对象,代表了一个Servlet的配置信息
在web.xml 文件中定义ServletContext 初始化参数的方法如下:
<init-param>
<param-name>param name</param-name>
<param-value>param value</param-value>
</init-param>