struts2对请求的封装?

struts2会对request中的参数进行封装,通过action中对应的setter方法自动设置到action中,然而它又是怎么把这些属性设置到result页面中的,不... struts2会对request中的参数进行封装,通过action中对应的setter方法自动设置到action中,然而它又是怎么把这些属性设置到result页面中的,不知道是不是使用request.setAttribute("name",value)的方法,当该action继承另外的action时,另外的action的属性是private级别的,即该action不会继承父action的属性,那为什么在result中也可以直接访问这个属性呢?struts2也会把父类的属性(包括私有的属性)封装后返回给结果页面吗? 展开
 我来答
ahyyxx222
2011-08-01 · TA获得超过2532个赞
知道小有建树答主
回答量:1405
采纳率:33%
帮助的人:1209万
展开全部
无论从当前action还是父action取值返回页面都是通过getXXX方法进行,所以父action的private不会影响取值输出,因为有public XXX getXXX。
struts2使用OGNL来从上下文的对象中取值,倒不需要一定得request.setAttribute
追问
那为什么我在result页面针对该属性使用request.getArribute()又能获取到值呢,好像还是设置到request里面了!
追答
request.setArribute()又没有什么性能开销,在返回时struts2通过get方法取值再放到request属性里也很正常的,可以适应更多类型的页面模版框架和标签取值
最低标配
2011-08-01 · TA获得超过709个赞
知道小有建树答主
回答量:496
采纳率:0%
帮助的人:199万
展开全部
我认为执行action时候!这些信息会存放在valuestack (在action传递的参数都放里面)
request.setAttribute("name",value只是设置context的内容!你在jsp页面上debug一下就能看见
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ForLoveFeng
2011-08-01 · 超过10用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:15.3万
展开全部
struts2是通过拦截器
将用户请求的参数封装到相应的pojo属性中的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式