导航:首页 > 编程语言 > 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类相关的资料

热点内容
单片机中ramrom是什么颜色 浏览:38
dev编译完不显示控制台窗口 浏览:592
程序员自学有希望吗 浏览:528
解压助眠外国 浏览:1000
python带格式读取word 浏览:153
php开发人员简历模板 浏览:575
韩国都用什么社交app 浏览:264
视频服务器端开发要掌握什么知识 浏览:294
钞票在手机屏幕上动是什么app 浏览:22
C证App有什么用 浏览:816
无锡专业cam编程培训价格 浏览:527
用什么app查企业是免费的 浏览:866
如何改变本地搭建的web服务器的ip 浏览:318
主要单片机 浏览:745
脚本编程培训 浏览:766
狐狸的夏天什么app免费 浏览:494
什么传输软件可以苹果安卓互传 浏览:159
高数极限运算法则怎么使用 浏览:268
远程桌面要加密传输 浏览:46
dll改名编译器不报错 浏览:131