<controller>与 RequestProcessor类处理请求

本文详细介绍了如何在Struts框架中通过配置<controller>标签来使用用户自定义的RequestProcessor类进行请求处理,包括类的实现、继承及在struts-config.xml中的映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

J2EE开发各类资源下载清单,  史上最全IT资源,个人收藏总结!


<controller>标签的配置主要是为了能让Struts能够识别由开发者自定义的控制器组件。使他们使用不同的RequestProcessor类处理请求。

  <controller processorClass="edu.encoding.RequestChinese"></controller>

  processorClass:指定请求的Java类的完整类路径名。默认为org.apache.struts.action.RequestProcessor。

用户自定义的RequestProcessor类

 (1)用户自己写的类必须继承RequestProcessor类,并且重写其process()方法。

 (2)此类和ActionServlet的作用一样的,是处理请求的控制器组件,其是被ActionServlet调用处理请求的。即在进入ActionForm和Action之前处理的请求。

  public class RequestChinese extends RequestProcessor {

   @Override

   public void process(HttpServletRequest request, HttpServletResponse response)

   throws IOException, ServletException {

      request.setCharacterEncoding("utf-8");

     //下句是一定要执行的,其意思是将请求交给下面的控制器。

     super.process(request, response);

   }

}

在struts-config.xml中的映射:

 <controller processorClass="edu.encoding.RequestChinese"></controller>

或者:

 <controller>

    <set-property property="processorClass" value="org.springframework.web.struts.DelegatingRequestProcessor"/>

 </controller>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值