我一直有个疑问,为什么struts2 不把action对象直接放到requestscope中,然后在forward到jsp页面?

BasicArchitect 2016-09-17 11:45:05
我一直有个疑问,为什么struts2 不把action对象直接放到requestscope中,然后在forward到jsp页面。这样jsp页面很简单的访问action对象的属性了。从概念上也最容易理解。但struts2却搞了一个valuestack概念,这是为什么呢?
...全文
226 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
月明星稀灬 2016-09-18
  • 打赏
  • 举报
回复
forward意思是转发,转发前后不共用同一个request
小灯光环 2016-09-18
  • 打赏
  • 举报
回复
值栈可以理解成功能更强大的“request”,因为值栈本身也是和请求一一对应,但request只是值栈的一部分,广义值栈ActionContext做为一个容易,包含了Action运行需要的所有数据,比如:请求的参数、属性、所有范围内的attr(page, request, session 和applicaion)~ 建议你再深入了解一下值栈的概念和用法
BasicArchitect 2016-09-18
  • 打赏
  • 举报
回复
大家帮帮忙啊
BasicArchitect 2016-09-18
  • 打赏
  • 举报
回复
引用 2 楼 wlwlwlwl015 的回复:
值栈可以理解成功能更强大的“request”,因为值栈本身也是和请求一一对应,但request只是值栈的一部分,广义值栈ActionContext做为一个容易,包含了Action运行需要的所有数据,比如:请求的参数、属性、所有范围内的attr(page, request, session 和applicaion)~ 建议你再深入了解一下值栈的概念和用法
谢谢,我之所以这么想,是因为我觉得把Action实例放到requestscope中, jsp页面就可以用el表达式访问了。 后来才发现,struts2使用装饰模式到方法把reques包装了一下。前台也可以用el 表达式,甚至可以用el表达式访问valuestack。 这样更好。。。

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧