使用servlet处理HTTP请求
2013-06-29 00:44
316 查看
1 HttpServletReques是ServletRequest的子接口。是专门针对http协议书写的接口,由容器实现,由用户调用。用户根据接口调用方法,可以屏蔽容器的差异。
2get与post区别:
提交数据类型: 文本 文本、二进制文本
提交数据长度: 255字符 无限制
提交数据可见性:作为URL地址的一部分显示在浏览器地址栏 作为请求的消息体,不可见
提交数据缓存 缓存在浏览器url历史状态中 不会被浏览器缓存
总结:
Get方式主要作用时资源的查找。
Post方式主要作用时数据的传输
3 url/uri区别
url:包含请求地址
uri:不包含
4:请求头
HttpServletReques利用getHeader()和getHeader()得到请求头,同样只对http协议有效。
5:上传图片:
1:post提交
2:enctype=”multipart/form-data”;
在Form元素的语法中,EncType表明提交数据的格式,用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型表单中 enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x- www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据。
6:请求转发
//得到请求转发对象
RequestDispatcher d=request.getRequestDispatcher("two");【要转发的servlet路径】
//内部转发指定的页面或servlet,客户端只发出一次请求。资源在服务器内部调用
d.forward(request, response);
//b包含另一个servlet输出的结果
d.include(request, response);
两种方法来包含不同的资源,以及将请求转发到不同资源:
1 forward()把请求和响应派发给别的资源后,就不会再去做任何处理了。
2 include()把请求发送给另一个服务器资源(通常是另一servlet)来完成工作,然后再返回给发送者。
//封装数据到request,只在一次请求范围内有效
request.setAttribute("ff", "11");
7 重定向和内部转发的区别
1:重定向由response发出,内部转发由requestDispatcher发出。
2:重定向发出二次请求,内部转发发出一次请求。内部转发可以取出request中封转的数据。而重定向不行。(每次请求会产生新的request对象)。
3:内部转发只能在一台服务器中作资源调用。重定向可以在第二次请求时请求另外的服务器。
8 Myeclipse开发时,部署名和工程名默认一致。但也可以不一致。
9改变部署名:
右键单击工程---properties---myeclipse---web---web context-root
10 在form表单的action中如果直接写路径,表示在当前目录下查找。
如果在action中先书写/。表示回到webapps根目录。这时必须在/后加上部署名。
4000
2get与post区别:
提交数据类型: 文本 文本、二进制文本
提交数据长度: 255字符 无限制
提交数据可见性:作为URL地址的一部分显示在浏览器地址栏 作为请求的消息体,不可见
提交数据缓存 缓存在浏览器url历史状态中 不会被浏览器缓存
总结:
Get方式主要作用时资源的查找。
Post方式主要作用时数据的传输
3 url/uri区别
url:包含请求地址
uri:不包含
4:请求头
HttpServletReques利用getHeader()和getHeader()得到请求头,同样只对http协议有效。
5:上传图片:
1:post提交
2:enctype=”multipart/form-data”;
在Form元素的语法中,EncType表明提交数据的格式,用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型表单中 enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x- www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据。
6:请求转发
//得到请求转发对象
RequestDispatcher d=request.getRequestDispatcher("two");【要转发的servlet路径】
//内部转发指定的页面或servlet,客户端只发出一次请求。资源在服务器内部调用
d.forward(request, response);
//b包含另一个servlet输出的结果
d.include(request, response);
两种方法来包含不同的资源,以及将请求转发到不同资源:
1 forward()把请求和响应派发给别的资源后,就不会再去做任何处理了。
2 include()把请求发送给另一个服务器资源(通常是另一servlet)来完成工作,然后再返回给发送者。
//封装数据到request,只在一次请求范围内有效
request.setAttribute("ff", "11");
7 重定向和内部转发的区别
1:重定向由response发出,内部转发由requestDispatcher发出。
2:重定向发出二次请求,内部转发发出一次请求。内部转发可以取出request中封转的数据。而重定向不行。(每次请求会产生新的request对象)。
3:内部转发只能在一台服务器中作资源调用。重定向可以在第二次请求时请求另外的服务器。
8 Myeclipse开发时,部署名和工程名默认一致。但也可以不一致。
9改变部署名:
右键单击工程---properties---myeclipse---web---web context-root
10 在form表单的action中如果直接写路径,表示在当前目录下查找。
如果在action中先书写/。表示回到webapps根目录。这时必须在/后加上部署名。
4000
相关文章推荐
- 使用servlet处理http请求
- 使用Servlet处理HTTP请求
- 使用servlet处理http请求
- 使用Servlet处理HTTP请求
- 使用Servlet处理HTTP请求
- 使用Servlet处理http请求
- 使用Servlet处理HTTP请求
- 使用Servlet处理HTTP请求
- 第四章 使用Servlet处理HTTP请求
- 使用servlet处理http请求
- iOS9 项目因使用http请求导致失败怎么处理
- servlet使用声明式异常处理指定错误跳转页面,ie下无法正常显示
- 关于servlet处理http请求和响应原理的前序和思考
- 使用servlet处理HTTP响应
- TOMCAT原理以及处理HTTP请求的过程、ContextPath ServletPath
- Servlet--HTTP请求、响应处理
- Servlet处理客户端HTTP请求
- TOMCAT原理以及处理HTTP请求的过程、ContextPath ServletPath
- intellij使用servlet发送和处理请求, 并用tomcat布置到服务器上
- tomcat7.0使用servlet处理jsp表单(form)的web.xml配置