xu506075418 2010-03-21 08:43 采纳率: 0%
浏览 257
已采纳

请问一个Struts2的问题,我知道action的执行环境ActionContext里面的request和session等都是一个Map

而我在action中取得HttpServletRequest对象,然后设置name-value,然后在jsp页面中仍然可以通过ognl表达式#request.name从ActionContext中获取到value,我想问是不是ActionContext将HttpServletRequest里面的东西拷贝到ActionContext里面的request(Map)当中了,如果是的话,什么时候的事情呢,谢谢

  • 写回答

3条回答

  • 拽拽的初行者 2010-03-21 14:30
    关注

    [b]
    [quote]ActionContext将HttpServletRequest里面的东西拷贝到ActionContext里面的request(Map)当中了[/quote][/b]
    [color=blue][b]
    是这样的。[/b][/color]

    [quote][b]我在action中取得HttpServletRequest对象,然后设置name-value[/b][/quote]
    [color=blue]
    [b]这种情况下,copy发生了2次:

    1、从HttpServletRequet --> Action , 这样你的 HttpServletRequet中的参数,自动填充到 Action的属性。(前置处理)

    2、从Action --> Result Page渲染时, 由于你在Action获取了HttpServletRequet 对象,所以,又发生了一次 copy。(后置处理。直接获取HttpServletRequet等对象,是Struts2不推荐的!)[/b][/color]
    [b]
    这些处理是由拦截器提供的:[/b]

    [code="xml"] [/code]
    [b]
    PS: 最好不要直接使用HttpServletRequet等与Servlet规范相关的对象。[/b]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题