- 浏览: 164879 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
zhousheng193:
非常感谢LZ
在JSP页面及servlet的doGet()方法中处理汉字乱码的问题 -
jie523314:
学习下。。。
读取XML文件
引用
1.Response
[JSP] JSP中的隐藏对象 -- response- -
JSP的response隐藏对象在转换为Servlet之后,对应于HttpServletResponse型态对象,HttpServletResponse对象是有关于对客户端请求之响应,您可以利用它来设定一些要响应的讯息,例如标题信息、响应状态码等.
response的常用方法:
setHeader():是一个通用的标头设定方法,您可以用它来设定任何「名称/值」的标头.
setIntHeader():是专门用来设定整数值标头的版本.
setDateHeader():是setHeader()的Date设定版本,第二个参数是设定Date的Long数值,0表示GMT 1970/1/1 00:00。
(Note:以上3个函数用来设置HTTP协议的表头,必须对HTTP协议有些了解才能正确使用,我现在也不清楚).
setStatus():是用来设定回应的状态码,例如404 Not Found,HttpServletResponse类中提供了一些助忆常数设定,例如SC_NOT_FOUND就是表示404状态码(可以在Servlet API文件中查询相关的助忆常数).
sendError():会根据服务器的预设错误网页回报方式显示错误讯息.
sendRedirect():设置重定向页面.
getWriter():取得PrintWriter对象,由它来写出响应至服务器的本体信息.
2.Request
[JSP] JSP中的隐藏对象 -- request- -
request这个对象不用事先宣告,就可以在JSP网页中使用,在转译为Servlet之后,它会转换为javax.servlet.http.HttpServletRequest型态的对象,HttpServletRequest对象是有关于客户端所发出的请求之对象,只要是有关于客户端请求的信息,都可以藉由它来取得,例如请求标头、请求方法、请求参数、使用者IP等等信息。
request的主要方法:
getParameterNames():取得客户端所发出的请求参数名称.
getParameter():可以让您指定请求参数名称,以取得对应的设定值.
getServerName():请求的服务器.
getProtocol():使用协议.
getMethod():请求方法.
getServerPort():请求端口号.
getContextPath():Context路径.
getServletPath(): Servlet路径.
getRequestURI():URI路径.
getQueryString():查询字符串.
getRemoteAddr():使用者主机IP.
getRemotePort():使用者使用端口号.
例子:
http://localhost:8080/myjsp/requestdemo.jsp?name=john&nick=johncn
对应的信息为:
请求的服务器: localhost
使用协议: HTTP/1.1
请求方法: GET
请求的端口号: 8080
Context路径: /myjsp
Servlet路径: /requestdemo.jsp
URI路径: /myjsp/requestdemo.jsp
查询字符串: name=john&nick=johncn
使用者主机IP: 127.0.0.1
使用者使用端口号: 1060
3. DoGet与DoPost
第一:你的servlet如果是继承自HttpServlet,就必须重写它里面的两 个虚方法doGet和doPost,也就是说,先不管别的servlet或jsp会去调用哪个方法,这两个方法都应该有。
第二:至于它调用哪个方法,就看提交方式
<form action="myServlet" method="get" >
method属性的值是get,它就去调用对应servlet的doGet方法。
同理,method属性的值是get,它就去调用对应servlet的doPost方法。
一般来说,不管采用那种提交方式,在servlet里要做的事情是一样的。所以,我们很多情况下,在一个方法里面调用另一个方法,这样随你那种方式提交的,都可以转去做一种处理。
eg:
public void doPost(HttpRequest request,HttpResponse response)throw ServletException,IOException {
doGet(request,response);
......
}
•如果请求是幂等的就可以使用GET
•所谓幂等是指多个请求返回相同的结果
•当改变服务器状态时应当使用POST方法
•GET请求的例子:
http://localhost/yourApp?firstName=Adam&middleName=Christopher
•采用POST方法向服务器发送命名参数时,与采用GET方法几乎一样的。
•区别:POST方法将参数串放在请求体中发送,而GET方法是将参数追加到URL中发送。
•如果数据处理不改变数据模型的状态,HTML使用规约理论上推荐采用GET方法,从这
可以看出,获取数据时应当使用GET方法。
•如果因为存储、更新数据,或者发送电子邮件,操作改变了数据模型的状态,这时建议使 用POST方法。
[JSP] JSP中的隐藏对象 -- response- -
JSP的response隐藏对象在转换为Servlet之后,对应于HttpServletResponse型态对象,HttpServletResponse对象是有关于对客户端请求之响应,您可以利用它来设定一些要响应的讯息,例如标题信息、响应状态码等.
response的常用方法:
setHeader():是一个通用的标头设定方法,您可以用它来设定任何「名称/值」的标头.
setIntHeader():是专门用来设定整数值标头的版本.
setDateHeader():是setHeader()的Date设定版本,第二个参数是设定Date的Long数值,0表示GMT 1970/1/1 00:00。
(Note:以上3个函数用来设置HTTP协议的表头,必须对HTTP协议有些了解才能正确使用,我现在也不清楚).
setStatus():是用来设定回应的状态码,例如404 Not Found,HttpServletResponse类中提供了一些助忆常数设定,例如SC_NOT_FOUND就是表示404状态码(可以在Servlet API文件中查询相关的助忆常数).
sendError():会根据服务器的预设错误网页回报方式显示错误讯息.
sendRedirect():设置重定向页面.
getWriter():取得PrintWriter对象,由它来写出响应至服务器的本体信息.
2.Request
[JSP] JSP中的隐藏对象 -- request- -
request这个对象不用事先宣告,就可以在JSP网页中使用,在转译为Servlet之后,它会转换为javax.servlet.http.HttpServletRequest型态的对象,HttpServletRequest对象是有关于客户端所发出的请求之对象,只要是有关于客户端请求的信息,都可以藉由它来取得,例如请求标头、请求方法、请求参数、使用者IP等等信息。
request的主要方法:
getParameterNames():取得客户端所发出的请求参数名称.
getParameter():可以让您指定请求参数名称,以取得对应的设定值.
getServerName():请求的服务器.
getProtocol():使用协议.
getMethod():请求方法.
getServerPort():请求端口号.
getContextPath():Context路径.
getServletPath(): Servlet路径.
getRequestURI():URI路径.
getQueryString():查询字符串.
getRemoteAddr():使用者主机IP.
getRemotePort():使用者使用端口号.
例子:
http://localhost:8080/myjsp/requestdemo.jsp?name=john&nick=johncn
对应的信息为:
请求的服务器: localhost
使用协议: HTTP/1.1
请求方法: GET
请求的端口号: 8080
Context路径: /myjsp
Servlet路径: /requestdemo.jsp
URI路径: /myjsp/requestdemo.jsp
查询字符串: name=john&nick=johncn
使用者主机IP: 127.0.0.1
使用者使用端口号: 1060
3. DoGet与DoPost
第一:你的servlet如果是继承自HttpServlet,就必须重写它里面的两 个虚方法doGet和doPost,也就是说,先不管别的servlet或jsp会去调用哪个方法,这两个方法都应该有。
第二:至于它调用哪个方法,就看提交方式
<form action="myServlet" method="get" >
method属性的值是get,它就去调用对应servlet的doGet方法。
同理,method属性的值是get,它就去调用对应servlet的doPost方法。
一般来说,不管采用那种提交方式,在servlet里要做的事情是一样的。所以,我们很多情况下,在一个方法里面调用另一个方法,这样随你那种方式提交的,都可以转去做一种处理。
eg:
public void doPost(HttpRequest request,HttpResponse response)throw ServletException,IOException {
doGet(request,response);
......
}
•如果请求是幂等的就可以使用GET
•所谓幂等是指多个请求返回相同的结果
•当改变服务器状态时应当使用POST方法
•GET请求的例子:
http://localhost/yourApp?firstName=Adam&middleName=Christopher
•采用POST方法向服务器发送命名参数时,与采用GET方法几乎一样的。
•区别:POST方法将参数串放在请求体中发送,而GET方法是将参数追加到URL中发送。
•如果数据处理不改变数据模型的状态,HTML使用规约理论上推荐采用GET方法,从这
可以看出,获取数据时应当使用GET方法。
•如果因为存储、更新数据,或者发送电子邮件,操作改变了数据模型的状态,这时建议使 用POST方法。
发表评论
-
添加过滤器的配置方法
2010-08-23 08:25 765引用方法: 1、写个类实现Filter接口 实现3个方法: p ... -
如何使用fileupload工具来实现文件上传
2010-08-17 14:07 10141。需要两个夹包文件: commons-fileupload- ... -
jsp中a标签?传参,参数怎么获取页面当中文本框的值
2010-08-16 16:50 9502引用<input type="text&quo ... -
个人感觉这个DAO实例写的还可以吧??呵呵
2010-08-14 13:23 751package org.tarena.shopping.d ... -
Session技术的理解
2010-08-12 20:38 818引用3、Session技术 (1)什么是session ... -
cookie如何使用??
2010-08-12 13:53 10152、cookie技术 (1)什么是cookie? 是 ... -
浏览器cookie的学习与测试
2010-08-12 11:24 734生成cookie: package web; imp ... -
学web很容易迷惑的问题
2010-08-11 15:00 599get只有一个流,参数附 ... -
servlet中service doGet doPost 的联系和区别
2010-08-11 14:44 1859在servlet中默认情况下,无论你是get还是post ... -
servlet处理表单的doGet和doPost
2010-08-11 14:37 967service() 是在javax.servlet.S ... -
在JSP页面及servlet的doGet()方法中处理汉字乱码的问题
2010-08-11 14:34 2003在doPost()方法中使用过滤器(所有编码方式为过滤器中设置 ... -
Servlet中doGet与doPost的区别
2010-08-11 14:31 1470Serlvet接口只定义了一个服务方法就是service,而H ... -
Servlet中doGet(),doPost(),service()函数的关系
2010-08-11 14:28 11061,三者之间的关系:doGet()和doPost()是由函数 ... -
对象的产生4种方法
2010-08-10 13:22 661引用 对象的产生到底有多少种方法了: · 直接用new关键字 ... -
servlet课堂笔记
2010-08-09 20:10 776引用 1、servlet的生命周 ... -
如何避免浏览器访问数据库出现乱码问题
2010-08-06 16:09 1055引用 mysql 创建 数据库时指定编码很重要,很多开发者都使 ... -
get/post提交怎么判别如何使用
2010-08-05 19:39 2496引用 get/post方式: get方式: ... -
手动生成servlet的一个实例方法
2010-08-05 17:01 908引用 Servlet 1、什么是S ... -
JSP和asp内置对象
2010-06-26 19:29 873引用JSP内置对象(9个常用的内置对象) 引用JSP共有以下9 ... -
html简介及用法总结
2010-06-26 17:31 1544WWW基本概念 www的全称为World Wide Web,即 ...
相关推荐
总结来说,`doGet`和`doPost`在Java Web中扮演着不同角色:`doGet`常用于展示信息,而`doPost`则适合处理更复杂的数据提交,包括文件下载。在实际应用中,你需要根据具体需求选择合适的方法,并正确处理请求和响应。
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取请求参数 String username = request.getParameter("username"); // 设置...
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 处理GET请求的逻辑 } ``` 2. **doPost方法**: POST请求则更常用于提交数据,...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); doPost(request, response); } /** ...
在Servlet的doGet或doPost方法中,我们可以通过这个对象获取请求参数、请求头、请求路径等信息。 例如,`request.getParameter("name")` 就是用来获取URL查询参数中的"name"值,就像在示例代码中那样,如果URL是`?...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } /** * The doPost method of the servlet...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String str = "字节流输出中文的乱码问题";//UTF-8的字符集,此时浏览器显示也需要使用...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } /** * The doPost method of the servlet. ...
5. **Request和Response的生命周期**:当请求到达服务器,Servlet容器创建Request和Response对象,传递给`service()`方法,然后调用Servlet的`doGet()`或`doPost()`等方法。完成后,Servlet容器负责销毁这些对象。 ...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter()...
protected void doGet(HttpServletRequest request, HttpServletResponse response) { String param = request.getParameter("someParam"); String decodedParam = Charset.charset(param, "GBK"); // 假设请求...
在实际应用中,`Request`和`Response`对象通常在Servlet的`doGet()`或`doPost()`方法中处理。首先,服务器接收到客户端请求后,会创建一个`Request`对象,然后调用对应的Servlet方法,并将`Request`和`Response`对象...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter()...
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=gbk"); request.setCharacterEncoding...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter()...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); ...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int width=80; int height=30; response.setContentType("image/jpeg"); ...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String id = request.getParameter("id"); response.setContentType("text/html; ...
确保正确配置后,你可以在Servlet的`doGet`或`doPost`方法中通过`HttpServletRequest`参数来获取Request对象,例如: ```java protected void doPost(HttpServletRequest request, HttpServletResponse response) ...
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } public void doPost(HttpServletRequest request, ...