导航:首页 > 编程语言 > javarequest类

javarequest类

发布时间:2024-09-07 15:48:28

java类中request.getParamater("a")获取jsp页面url传递的参数,编码问题。

因为URL采用ISO-8859-1编码,所以得把它转换成与页面相同的编码方式。
获取的值转码试试看
比如:
str=new String(str.getBytes("iso-8859-1"),("gb2312"));

❷ 如何用java判断浏览器类型

用java判断浏览器类型可以通过从request里可以获取用户浏览器类型

代码如下:

Enumerationgete=request.getHeaderNames();
while(e.hasMoreElements()){
Stringname=(String)gete.nextElement();
Stringvalue=request.getHeader(name);
}

这样可以遍历从客户端传来的所有头信息:

解释说明:

  1. request.getHeaderNames();//取得全部头信息

  2. request.getHeader();//取出头信息内容

  3. request.getHeaders("User-Agent"); //request.getHeader(“User-agent”)返回客户端浏览器的版本号

❸ java如何在一个普通的类中获取request对象

你是指你的 web 项目中使用到一个工具性的类,它的形参中没有 HttpRequest 或 HttpSession 参数?


如果是这样的话,我们需要使用一个 ThreadLocal 变量,我们把当前 request 的变量绑定到里面,在一个 request 请求的生命周期内我们在方法调用的各个更深的层次中都可以直接使用它而不需要在每个方法中都传递这个 request 参数,保存在某个地方就容易导致因为多个请求共用同一个实例而出问题,所有 context 相关的变量不保存在任何业务类相关并且可能被多线程共用的对象实例中才是保证不会出现线程安全问题的途径。


例如,这个例子中我们只要把web.xml中配置好 ContextFilter 后它就会自动在请求开始时绑定一个 context,结束后自动销毁,在这中间的任何时刻我们都可以通过 MyWebContext.getCurrentContext() 得到我们的 HttpServletRequest 实例和其它相关的 context 变量:

//MyWebContext记录当前Request的所有context变量。因为servlet是一个请求绑定一个线程的,我们用ThreadLocal不会有线程安全问题。

classMyWebContext{
=newThreadLocal();

//拿出当前线程绑定的context
(){
return(MyWebContext)contexts.get();
}
(){
returnnewMyWebContext();
}

//绑定一个context到当前线程
publicstaticvoidsetContext(MyWebContextcontext){
contexts.set(context);
}
publicstaticvoidclearContext(){
contexts.set(null);
}

privateHttpRequestrequest;
publicvoidsetRequest(HttpRequestrequest){
this.request=request;
}
publicHttpRequestgetRequest(){
returnthis.request;
}
}

{
publicvoiddoFilter(ServletRequest,SerlvetResponse,FilterChainchain){
//创建并绑定我们的context
MyWebContextcontext=MyWebContext.createContext();
context.setRequest(request);
MyWebContext.setContext(context);
try{
chain.doFilter(request,response);
}finally{
//销毁context
MyWebContext.clearContext();
}
}
}

{
(){
//其它方法只要它是工作在servlet请求调用键中间的某个时刻,它就肯定能拿到Filter绑定进去的Request,这样我们就不必要在每次方法调用中都额外地传递一个HttpRequest参数,当调用层次很深时这能明显减少复杂性。

MyWebContextcontex=MyWebContext.getCurrentContext();

HttpRequestrequest=context.getRequest();

=...;
HttpSessionsession=request.getSession(false);
...

}
}

❹ java里,request.getRequestURI().indexOf是什么意思

request:请求
getRequestURI:获取请求的url
indexOf(str):求字符串内str出现的位置下标
所以:request.getRequestURI().indexOf("1.jsp")的意思就是,求请求的url内“1.jsp”的位置,返回的是一个数字,代表出现的位置,-1表示不存在。通常和-1比较来表示是否包含指定的页面,常用于过滤器。
例:if(request.getRequestURI().indexOf("1.jsp")){
filterChain.doFilter(request,response);//给1.jsp放行

}else{
xxxxxx//不放行,进行别的操作

}

❺ Java 怎么在一个普通类中获取到Request对象

首先,向你确认你所谓的普通类就是POJO吗,如果是是无法获取Request对象的。
不过,可以使用参数传递的方式。

Request对象,即ServletRequest,隶属于javax包下的,需要实现其HttpServletRequest接口才能获取到Request对象

故在普通java类中是无法获取到request对象的

望参考

阅读全文

与javarequest类相关的资料

热点内容
安卓路由表怎么看 浏览:74
10个小孩分糖果python 浏览:823
安卓app小红点怎么取消 浏览:286
马哥linux面授 浏览:768
2345程序员 浏览:371
怎么开启网速显示安卓 浏览:204
索尼950app怎么样 浏览:391
计算机毕设论文源码 浏览:148
小米手机怎么下载易媒体App 浏览:191
还原系统设计可以怎样清理文件夹 浏览:670
北京时间校准服务器云服务器 浏览:844
pythonexcel数据计算 浏览:49
内医附院党建APP怎么下载 浏览:356
荣耀v20刷加密门禁卡 浏览:329
app缓冲视频怎么保存在手机 浏览:433
广度优先算法c语言 浏览:680
提高程序员竞争力 浏览:108
nfc可以开加密门卡吗 浏览:675
如何知道网页使用的服务器是什么 浏览:224
单片机接反电源会烧吗 浏览:287