request所有参数的所有方法 哪里有

Request对象的主要方法有哪些? - CSDN博客
Request对象的主要方法有哪些?
Request对象的主要方法:&
setAttribute(String name,Object):设置名字为name的request 的参数值&
getAttribute(String name):返回由name指定的属性值&
getAttributeNames():返回request 对象所有属性的名字集合,结果是一个枚举的实例&
getCookies():返回客户端的所有 Cookie 对象,结果是一个Cookie 数组&
getCharacterEncoding() :返回请求中的字符编码方式&
getContentLength() :返回请求的 Body的长度&
getHeader(String name) :获得HTTP协议定义的文件头信息&
getHeaders(String name) :返回指定名字的request Header 的所有值,结果是一个枚举的实例&
getHeaderNames() :返回所以request Header 的名字,结果是一个枚举的实例&
getInputStream() :返回请求的输入流,用于获得请求中的数据&
getMethod() :获得客户端向服务器端传送数据的方法&
getParameter(String name) :获得客户端传送给服务器端的有 name指定的参数值&
getParameterNames() :获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实
getParameterValues(String name):获得有name指定的参数的所有值&
getProtocol():获取客户端向服务器端传送数据所依据的协议名称&
getQueryString() :获得查询字符串&
getRequestURI() :获取发出请求字符串的客户端地址&
getRemoteAddr():获取客户端的 IP 地址&
getRemoteHost() :获取客户端的名字&
getSession([Boolean create]) :返回和请求相关 Session&
getServerName() :获取服务器的名字&
getServletPath():获取客户端所请求的脚本文件的路径&
getServerPort():获取服务器的端口号&
removeAttribute(String name):删除请求中的一个属性
本文已收录于以下专栏:
相关文章推荐
setAttribute(String name,Object):设置名字为name的request的参数值
getAttribute(String name):返回由name指定的属性值
setAttribute(String name,Object):设置名字为name的request的参数值 getAttribute(String name):返回由name指定的属性值 getAt...
Request常用方法,获得客户机信息,请求头以及请求参数
Request常见应用,获取表单输入的数据,请求参数的中文乱码问题解决
1、访问或添加request/session/application属性
public String scope() throws Exception{
    ActionContext ctx =...
HttpServletRequest类既有getAttribute()方法,也由 getParameter()方法,这两个方法有以下区别:
(1)HttpServletRequest类有setA...
  要获得上述对象,关键Struts 2.0中com.opensymphony.xwork2.ActionContext类。我们可以通过它的静态方法getContext()获取当前 A...
1. request请求对象常用方法:
public void doPost(HttpServletRequest request, HttpServletResponse response)
什么是HttpServletRequest
HttpServletRequest**对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,**HTTP请求头中的所有信息都封装在这个对象中,开...
他的最新文章
讲师:吴岸城
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)博客分类:
用jboss发布的工程,测试request对象返回路径的方法,如下:
System.out.println(LoginAction.class.getResource("/").getPath());
System.out.println(this.getRequest().getContextPath());
System.out.println(this.getRequest().getRealPath("/images/icon"));
System.out.println(this.getRequest().getRequestURI());
System.out.println(this.getRequest().getRequestURL());
System.out.println(this.getRequest().getRealPath("/images/icon").replace('\\', '/'));//替换斜杠
16:28:27,522 INFO
[STDOUT] /F:/jboss-4.2.3/server/default/deploy/b2cPlatform.war/WEB-INF/classes/
16:28:27,522 INFO
[STDOUT] /b2cPlatform
16:28:27,522 INFO
[STDOUT] F:\jboss-4.2.3\server\default\.\deploy\b2cPlatform.war\images\icon
16:28:27,522 INFO
[STDOUT] /b2cPlatform/Login_login
16:28:27,522 INFO
[STDOUT] http://localhost:8082/b2cPlatform/Login_login
10:00:54,242 INFO
[STDOUT] F:/jboss-4.2.3/server/default/./deploy/b2cPlatform.war/images/icon
###注意:1.在win7系统下,通过计算机无法定位F:\jboss-4.2.3\server\default\.\deploy\b2cPlatform.war\images\icon;但是XP和2003系统可以,win7通过cmd,java的File类一样可以使用.访问到文件!
================================================================================
request.getRemoteUser();//获取当前缓存的用户,比如Spring Security做权限控制后就会将用户登录名缓存到这里
request.getRemoteAddr();//获取客户端IP,需要注意的是获取到的是直接面向的IP地址,并不是经过代理等处理的原始地址
request.getRemotePort();//获取服务端访问端口
request.getRemoteHost();//获取服务端地址
即当前路径为 request.getRemoteHost()+":"+request.getRemotePort()
二、getRemoteAddr()与 getRemoteHost()的区别小结
getRemoteAddr():获得客户端的IP地址
getRemoteHost():获得客户端电脑的名字,若失败,则返回客户端电脑的IP地址
InetAddress ia = InetAddress.getLocalHost();
String iad = ia.getHostAddress();//主机IP
String ias = ia.getHostName();//主机名
请问我在JSP页面中使用如下语句:
System.out.println("request.getRemoteAddr(): " + request.getRemoteAddr());
System.out.println("request.getRemoteHost(): " + request.getRemoteHost());
得到的结果相同(局域网内试验的结果)。
那么getRemoteAddr()和getRemoteHost()到底有什么区别?
前一个是获得客户端的ip地址
后一个是获得客户端的主机名
所以用前一个。
使用request.getRemoteAddr()取得client的ip有問題
request.getRemoteAddr()可以取得用戶端ip ,但我試了的結果是 0:0:0:0:0:0:0:1 ,請問是哪裡出了問題,要如何解決呢?謝謝各位回答。
这可能是由于你并没有连入互联网或局域网没有获得ip,也有可能是你的上网的方式有问题,我也曾经出过这样的问题,不过换到公司使用局域网测试ip就显示出来了
---------------------------------------------------------------
在servlet中怎样能取到真实的客户端ip地址?
如果客户端来自服务器以外的网段,request.getRemoteAddr得到的只是那个客户端网关(代理)的ip,没有办法取到真实的客户端ip吗?
#当用户使用代理或者是局域网访问你的应用程序,你用request.getRemoteAddr()方法返回的是代理的地址或是局域网网关的地址.
#request.getRemoteAddr()只能获取第一层,如果获取的地址是内网地址,可能是路由器中转了
详细出处参考:http://www.jb51.net/article/21498.htm
(276.5 KB)
描述: 获取本机的真实IP地址+java.net.InterfaceAddress获取网卡信息
下载次数: 59
浏览: 1572219 次
来自: 哈尔滨
今天也跟着学习了,用到了
讲解的很不错。URLConnection类的内容也可以看这篇文 ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'request的所有方法 哪里有 - ThinkPHP框架
$request -& ip
$request -& type
这样的 哪里有全部的方法
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。&&&&&&&&&&&&&&&&&&
posts - 22,comments - 3,trackbacks - 0
从Request对象中可以获取各种路径信息,以下例子:
假设请求的页面是index.jsp,项目是WebDemo,则在index.jsp中获取有关request对象的各种路径信息如下
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
String remoteAddress=request.getRemoteAddr();
String servletPath=request.getServletPath();
String realPath=request.getRealPath("/");
String remoteUser=request.getRemoteUser();
String requestURI=request.getRequestURI();
<span style="color: #
out.println("path:"+path+"&br&");
<span style="color: #
out.println("basePath:"+basePath+"&br&");
<span style="color: #
out.println("remoteAddr:"+remoteAddress+"&br&");
<span style="color: #
out.println("servletPath:"+servletPath+"&br&");
<span style="color: #
out.println("realPath:"+realPath+"&br&");
<span style="color: #
out.println("remoteUser:"+remoteUser+"&br&");
<span style="color: #
out.println("requestURI:"+requestURI+"&br&");
<span style="color: #
<span style="color: #
path:/WebDemo
<span style="color: #
basePath:http://localhost:8683/WebDemo/
<span style="color: #
remoteAddr:127.0.0.1
<span style="color: #
servletPath:/index.jsp
<span style="color: #
realPath:D:\apache-tomcat-6.0.13\webapps\WebDemo\
<span style="color: #
remoteUser:null
<span style="color: #
requestURI:/WebDemo/index.jsp
<span style="color: #
从上不难看出request各个对应方法所代表的含义
从request获取各种路径总结:
request.getRealPath("url");//虚拟目录映射为实际目录
request.getRealPath("./");//网页所在的目录
request.getRealPath("../");//网页所在目录的上一层目录
假定你的web application(web应用)名称为news,你的浏览器中输入请求路径:http://localhost:8080/uploading/load.jsp
request.getContextPath()
/uploading
request.getServletPath()
request.getRequestURL()
http://localhost:8080/uploading/load.jsp
request.getRealPath("/")
F:\learn\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\uploading\
<span style="color: #
现在request.getRealPath("/") 这个方法已经不推荐使用了
<span style="color: #
<span style="color: #
ServletContext.getRealPath(java.lang.String)
<span style="color: #
request.getSession().getServletContext().getRealPath() 得到工程文件的实际物理路径,也就是绝对地址
//Returns the part of this request's URL from the protocol name up to the query string in the first line of the HTTP request
/manage/editExam.domethod=goExamSet&type=U
String url = request.getRequestURI();
//The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters
http://127.0.0.1:8080/manage/editExam.domethod=goExamSet&type=U
StringBuffer url_buffer = request.getRequestURL();
HttpServletRequest 的这两种方法都只能得到不包含参数的请求url,区别如下:
1 前者返回相对路径,后者返回完整路径
2 前者返回string ,后者返回stringbuffer
得到完整请求url可以通过如下方法,getQueryString()得到的是url后面的参数串,和前者相加就是带参数的请求路径了
String queryString = request.getQueryString();
ring fullPath = url + queryS
// 或者是url_buffer.toString()+queryS
阅读(...) 评论()java中request常用方法小结
投稿:hebedich
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了java中request常用方法小结,需要的朋友可以参考下
&&&&& HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户这些信息。
request常用方法:
一、获取客户机环境信息常见方法:
& 1.getRequestURL方法返回客户端发出请求时的完整URL。
& 2.getRequestURI方法返回请求行中的资源名部分。
& 3.getQueryString方法返回请求行的参数部分。
& 4.getRemoteAddr方法返回发出请求的客户机的IP地址。
& 5.getRemoteHost方法返回发出请求的客户机的完整主机名。
& 6.getRemotePort方法返回客户机所使用的网络端口号。
& 7.getLocalAddr方法返回WEB服务器的IP地址。
& 8.getLocalName方法返回WEB服务器的主机名。
& 9.getMethod得到客户机请求方式。
&package com.yyz.
&import java.io.IOE
&import java.io.OutputS
&import javax.servlet.ServletE
&import javax.servlet.http.HttpS
&import javax.servlet.http.HttpServletR
&import javax.servlet.http.HttpServletR
&public class RequestDemo extends HttpServlet {
&&&& public void doGet(HttpServletRequest request, HttpServletResponse response)
&&&&&&&&&&&& throws ServletException, IOException {
&&&&&&&& /**
&&&&&&&&& * URL是URI的子集。
&&&&&&&&& * URI用来标识一个资源。
&&&&&&&&& * URL用来标识互联网上的一个资源。
&&&&&&&&& */
&&&&&&&& System.out.println(request.getRequestURL());//得到请求URL地址
&&&&&&&& System.out.println(request.getRequestURI());//得到请求的资源
&&&&&&&& System.out.println(request.getQueryString());
&&&&&&&& System.out.println(request.getRemoteAddr());//得到来访者IP
&&&&&&&& System.out.println(request.getRemoteHost());
&&&&&&&& //由于没有在dns上注册所以打印结果还是127.0.0.1,如果是百度访问这个程序,则打印
&&&&&&&& System.out.println(request.getRemotePort());//得到请求的资源
&&&&&&&& System.out.println(request.getMethod());//得到请求的资源
&&&& public void doPost(HttpServletRequest request, HttpServletResponse response)
&&&&&&&&&&&& throws ServletException, IOException {
&&&&&&&& doGet(request,response);
在浏览器地址栏输入:后后台输出入下图:
二、获得客户机请求头:
&1.getHeader(String name)方法
&2.getHeaders(String name)方法
&3.getHeaderNames()方法
&package com.yyz.
&import java.io.IOE
&import java.util.E
&import javax.servlet.ServletE
&import javax.servlet.http.HttpS
&import javax.servlet.http.HttpServletR
&import javax.servlet.http.HttpServletR
&//获取请求头
&public class RequestDemo extends HttpServlet {
&&&& public void doGet(HttpServletRequest request, HttpServletResponse response)
&&&&&&&&&&&& throws ServletException, IOException {
&&&&&&&& String head = request.getHeader("Accept-Encoding");
&&&&&&&& //有些浏览器不支持压缩数据
&&&&&&&& if(head.contains("gzip")){
&&&&&&&&&&&& //输出压缩数据
&&&&&&&& }else{
&&&&&&&&&&&& //输出不压缩数据
&&&&&&&& }
&&&&&&&& //获取指定名称的头的所有值
&&&&&&&& Enumeration e = request.getHeaders("Accept-Encoding");
&&&&&&&& while(e.hasMoreElements()){
&&&&&&&&&&&& String value = (String ) e.nextElement();
&&&&&&&&&&&& System.out.println(value);
&&&&&&&& }
&&&&&&&& System.out.println("------------------------");
&&&&&&&& //获取所有的头和值
&&&&&&&& e = request.getHeaderNames();
&&&&&&&& while(e.hasMoreElements()){
&&&&&&&& String name = (String)e.nextElement();
&&&&&&&& String&&&& value = request.getHeader(name);
&&&&&&&& System.out.println(name+"="+value);
&&&&&&&& }
&&&& public void doPost(HttpServletRequest request, HttpServletResponse response)
&&&&&&&&&&&& throws ServletException, IOException {
&&&&&&&& doGet(request,response);
在浏览器访问该程序,后台输出如下:
三、获得客户机请求参数(客户端提交的数据):
&1.getParameter(name)方法
&2.getParameterValues(String name)方法
&3.getParameterNames方法
&4.getParameterMap方法,做框架时大量使用
package com.yyz.
import java.io.IOE
import java.util.E
import java.util.M
import java.util.Map.E
import javax.servlet.ServletE
import javax.servlet.http.HttpS
import javax.servlet.http.HttpServletR
import javax.servlet.http.HttpServletR
//获取请求数据
public class RequestDemo extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//http://localhost:8080/test/servlet/RequestDemo&#63;name=yyz
String value = request.getParameter("name");
System.out .println(value);
//http://localhost:8080/test/servlet/RequestDemo&#63;like=sing&like=dance
String likes[] = request.getParameterValues("like");
if(likes!=null){
for(String like : likes){
System.out.println(like);
//下面是这种遍历的专业写法,获取数组数据的方式(可避免空指针异常)
for(int i=0;likes!=null&&i&likes.i++){
System.out.println(likes[i]);
//获取所有名称,并根据名称获取值
Enumeration e = request.getParameterNames();
while(e.hasMoreElements()){
String name = (String) e.nextElement();
value = request.getParameter(name);
System.out.println(name+"="+value);
System.out.println("----------------------");
//得到request对象中用来封装数据的Map集合
Map&String,String[]& map = request.getParameterMap();
for(Entry&String, String[]& me : map.entrySet()){
String name = me.getKey();
String [] v = me.getValue();
System.out.println(name+"="+v[0]);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 request的所有方法 的文章

 

随机推荐