请问下setAttribute()、getAttribute()、getRequestDispatch()、getServletContext()等方法只在请求对象ServletRequest极其子类中有,而在响应对象ServletResponse中却没有,如何根据HTTP协议来理解HttpServletRequest请求对象和HttpServletResponse响应对象,从而更好地理解请求和响应对象中的方法????
解决方案 »
- 对于parseInt(String )的NumberFormatException如何进行更细的捕获
- 速算24 如何增加运算符优先级
- 菜鸟在学GUI 请问我的程序哪里错了
- 请问高手 下面的问题怎么解决啊
- 一个静态变量的怪问题(内附例子)
- java中图片文件头的处理
- 一个JAVA线程如果长时间没有动作,会被操作系统挂起,而且需要有动作的时候不会被唤醒,请问如何解决这个问题?
- SOS!!!救救小女子一命!!…… 有谁知道java语言中的PDF开发包?
- 是java的bug吗?
- 求助~JAVA如何播放媒体文件和媒体流
- 怎样获取键盘焦点?
- 关于swing的JFrame调用swt的shell的问题,请大家指教
path
container
response就是响应客户端传过来的请求.
此时这个请求会被提交到servlet容器中,并且容器创建了两个对象,一个是ServletRequest对象,一个是ServletResponse对象,ServletRequest对象封装了用户的请求信息,然后servlet容器把ServletRequest对象,ServletResponse对象都传给了你所请求的A页面,A页面此时便开始处理请求,处理完后把结果封装到ServletResponse里面去,然后在把ServletResponse传回给浏览器。jsp和servlet都叫web组件,如何在web组件之间进行数据的交流传送呢?
可以使用setAttribute()、getAttribute()来进行,比如说:你在A页面中写了下面的语句:
request.setAttribute("user",user);
并且在A页面使用转发的语句到达了B页面那么在B页面可以使用
request.getAttrubute(user);
来读取你在A页面中设置的内容
这样就达到了web组件之间数据的传送。
在写struts代码时候会用到一个重要的知识点,就是scope属性,有page,request,session,application这四个对象都有各自的存储范围,可以通过他们来进行web组件之间的数据传送。