struts2根本在request上无法真正实现和servlet解耦!还是和struts1一样,杯具!

举例:

比如说login.action?params=123.


这个params是在LoginAction类里面没有对应的属性和get、set方法的,

 

因为这个只是临时使用!有时候根本不需要弄那么多乱起八糟的属性放在Action类中或者封装在VO里面的。

这里就有一个很严重的问题,Struts2的Action根本就不能实现很好的解耦:

1、对于与servlet无关的的获取客户端的request里面的params的ActionContext.getContext().get("request")

或者

2、实现这些所谓的RequestAware,SessionAware,ApplicationAware接口也根本无法获取获取URL后面直接跟的参数。

他们返回的Map 对象永远都是NULL或者是不包含在URL请求里面的params的,

 

除非你给Action加上这个params属性和get、set方法,那样是可以的!

但是如果不使用struts2所谓能够解耦的方式而使用与servlet有关的方式:

1、ServletActionContext.getRequest();

2、实现ServletRequestAware,ServletContextAware接口。

这个就可以获取URL上面的参数,等于还是和struts1一样的,哎...................



给大家分享吧!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值