jsp页面使用request.setAttribute()提交到servlet中接收不到?

   之前写了一个jsp页面,里面使用了request.setAttribute()这个方法来传递参数,然后将这个参数传递到一个servlet页面进行处理,写的时候没有问题,但是运行的时候却报了空指针错误,错误的那行代码刚好就是获取这个参数的那行代码,百思不得其解,后来发现原来是这样。
   我们都知道jsp里面request作用域的作用范围是一次请求到响应的过程,而jsp页面提交数据到servlet页面使用的是重定向的方式(看浏览器上的URL地址就知道了)而不是转发的方式,使用重定向方式的时候是不能使用request.setAttribute()方法来传递参数的,因为request作用域变了,不在是这个请求了,而是另一个请求了。
   关于这个问题的解决方法就是在表单里面设置一个隐藏域或者使用session.setAttribute()这个方法,因为jsp里面的session作用域范围是从开始会话到结束会话,只要你不结束会话使用重定向或者转发方式都一样。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值