servlet处理http请求
GET/POST提交方法
get提交方式,用于获取到服务器的资源
1、地址栏直接输入服务器资源
2、通过js直接访问
3、超链接访问
post提交方式,主要是用于传输数据,客户端向服务器发送数据一般用post。文本,二进制的数据。
URL:统一资源定位符
URI:统一资源标识符
http传送的请求行的内容全部封装到了request对象,可以直接
获取请求的URL地址:request.getRequestURL().toString();
获取请求的URI地址:request.getRequestURI();
获取请求附带的参数:request.getQueryString();
获取到客户端请求的方法:request.getMethod();
获取到客户端的IP:request.getRemoteAddr();
获取到服务器的内容:request.getLocalPort();
获取请求头
request.getHeader("User-Agent");
获取所有的请求头
Enumeration num = request.getHeaderNames(); //返回的是一个枚举对象
设置请求编码集
在doGet/doPost第一行添加:request.setCharacterEncoding("utf-8");
获取用户的多个数据:request.getParameterValues();
get提交中文默认乱码,一般使用post提交中文。
请求派发
当前请求派发以后,资源的控制权移交下一资源
包含:将其他资源的内容包含到本资源中来,最终控制权会回到最开始的servlet。
请求派发和重定向的区别
1、请求派发状态码307,重定向302
2、请求派发是在服务气短完成的,不影响客户端,地址栏不会变化,重定向由客户端完成,地址栏会变化。
3、请求派发只能在本服务器完成,重定向可以访问其他服务器的资源。
注意:
在请求派发里边,斜杠就表示当前工程,请求派发默认调用dopost方法