struts2 简单总结

    在使用struts2框架后,浏览器访问一个action的过程中,如图中输入url地址:xxx.action?id=3&name=ad&xxx=xxx

    首先会经过一系列的过滤器,过滤器会做很多工作,首先,在经过第一个过滤器时,就会创建create一个值栈valueStack对象,并且会初始化init一些参数放到值栈中,会放些什么东西呢?在map集合中会放request对象(包括request所带有的值),sessionapplication等,在对象栈stack中放入我们即将访问的xxx action,和另外一个action,此时如果我们的action实现了modelDriven接口,则第二步会执行push(model),model对象放到栈顶中,(如果没有实现该接口,则没有该过程),第三步,封装参数,将我们url地址所带有的参数封装到值栈中,存放顺序为:先从对象栈中的第一个对象model开始,调用属性的set方法为属性设值,如果参数中agemodel中没有该属性,则继续向下一个对象中找,如果对象栈中没有,则都会存放到map中,到现在呢,都初始化好了,接下来就是如何在actionjsp中获取和设置的呢?

action中,通过actionContext对象可以存取设置参数:

如果是map操作,则通过如下方式操作:

ActionContext.getContext().put(k,v)/ .get(k)

如果是对象栈操作,则通过如下方式操作:

ActionContext.getContext().getValueStack().push(obj)/.pop()



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值