如何servlet中servlet获取请求头信息

Servlet中如何获取response的statusCodeHttpURLConnection.getResponseCode()可以获取,但需要new一个URL对象并重新发送请求,有性能损失。有没其他的获取statusCode的方法。&
我在Oracle官网论坛上看见别人的讨论:可以通过apache的工具类org.apache.catalina.valves.RequestDumperValve来获取,但自己未找到其源码。另外也有人说对Reponse对象封装来跟踪statuCode,说的比较模糊,实现不便。&
各位大牛们有什么好的办法?若实在要用HttpURLConnection.getResponseCode()那有没办法避免请求被过滤器拦截(我想是不可能地)。先说声谢谢!
情况是这样的,一个Servlet主入口负责处理分发过来的HttpServletRequest请求和HttpServletRsponse响应(在配置文件中定义好的),在HttpServletResponse.setStatusCode()和设置响应报文后,在跳出该方法。我想获取该方法执行完后再来获取Response的statusCode,这时Response只是一个HttpServeltResponse接口。&
回答1:终于取出来了,不过是在request里面,不是response。
:${requestScope['javax.servlet.error.status_code']}
个人觉得应该是从response里面取出,因为response可以更改状态码,request取出的是response更改以前的。所以,如果404状态码,response用setStatus修改成了200,request取出的还是404。不过这样也方便了jsp进行处理。
不过response,好像没提供取出的方法。request其实也没有,只是发现request是个类似map类型的,有key和value对,这样就很容易取出任何一个值了。
两年前的帖子了,估计你可能也解决了。就留给后人看吧。博客访问: 1472728
博文数量: 261
博客积分: 5472
博客等级: 大校
技术积分: 3097
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Java
比如,需要得到:http://site/somepage.jsp?id=1
String getFullURL(HttpRequest request) {
&StringBuffer url = request.getRequestURL();
&if (request.getQueryString() != null) {
&&url.append('?');
&&url.append(request.getQueryString());
&return url.toString();
阅读(2215) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。【图文】Servlet获得请求中的数据_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
Servlet获得请求中的数据
上传于||暂无简介
大小:662.36KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢servlet中如何获取请求参数为对象的数据
前端用post方式提交了很多数据,类似如下:
&script type="text/javascript"&
function do_test()
var req = {};
req['id'] = 10010;
req['name'] = '本山传媒';
req['type'] = '001';
var info = {};
info['customer'] = '赵本山';
info['age'] = 72;
info['isAdmin'] = 1;
req['info'] =
var user1 = {};
user1['uid'] = 100;
user1['uname'] = '范冰冰';
var user2 = {};
user2['uid'] = 200;
user2['uname'] = '李晨';
var list = [user1, user2];
req['list'] =
$.post('/leshop/home.do',req, function(res){
console.log(res);
这里的info对象会有很多,list数组也不确定
请问,这样情求到后台,如何动态的循环拿到数据
ruby on rails中,可以直接使用map的方式取值
params['list'] 获取的是个数组,可以直接循环
params['info'] 获取的是个map,可以继续操作map
请问,在servlet里面怎么做
看你的js你post上去是一个json,你先获取到这个参数,然后直接用第三方类库比如jackson讲获取的json字符串转成对象或者map就可以了
--- 共有 1 条评论 ---
ObjectMapper mapper = new ObjectMapper();
Map res = mapper.readValue(req.getInputStream(), Map.class);
这样吗,能不能说详细点

我要回帖

更多关于 servlet 获取请求实体 的文章

 

随机推荐