默认为get提交的方法
- 用户在网页上点击超链接
- 提交填写好的表单(默认Method)
- 用户在浏览器输入URL地址并回车。
get方法只能提交文本,post可以文本和二进制
get255字符,post无限制
作为URL地址的一部分,post不可见
get缓存在url历史中(浏览器历史记录),post不被浏览器缓存。
请求静态页面或图形文件使用get,因为他们需要发送文件名;
发送大数据的时候,使用Post;
上传文件使用Post;
发送用户名密码等需要保密的使用Post;
getMethod
URI就是 去掉http://域名:端口/
的后面的东西。项目相对路径
URL项目绝对路径
getContextPath:得到项目名称
getProtocol:得到HTTP协议
getQueryString:userName=lovo&pwd=123.表单提交上来的值
reg.getServletPath 得到ServletPath的映射路径。
得到所有的请求头
Enumeration enum = request.getParameterNames();
while (enum.hasMoreElements()) {
String pName = (String) enum.nextElement();
String[] pValues = request.getParameterValues(pName);
//pName是自己取的名字
out.print("<b>"+pName + "</b>: ");
for (int i=0;i<pValues.length;i++) {
out.print(pValues[i]);
}
out.print("<br>");
}
服务器内部转发
//服务器内部转发
req.getRequestDispatcher("Other Servlet").forward(req.resp);
Html文件中头部的是告诉HTML验证器我们所使用的是HTML的哪个版本呢
派发中forward和include的区别:
forward是完全派发给另外一个页面后,本页面再不做任何举动,方法停止,相当于把请求和响应的控制权交给另外那个servlet。
include是自己处理一部分,派发给另外一个页面处理另外一个部分,该servlet的方法继续执行,控制权没有交给另外个servlet,还是本servlet对请求作出回应