Struts 2的控制器组件

Struts 2的控制器组件

 

Struts 2的控制器组件是Struts 2框架的核心,事实上,所有MVC框架都是以控制器组件为核心的。正如前面提到的,Struts 2的控制器由两个部分组成:FilterDispatcher和业务控制器Action

实际上,Struts 2应用中起作用的业务控制器不是用户定义的Action,而是系统生成的Action代理,但该Action代理以用户定义的Action为目标。

下面是Struts 2Action代码示例:

public class LoginAction

{

           //封装用户请求参数的username属性

           private String username;

            //封装用户请求参数的password属性

           private String password;

            //username属性的getter方法

            public String getUsername()

            {

                       return username;

             }

               //username属性的setter方法

               public void setUsername(String username)

               {

                         this.username = username;

                }

                 //password属性的getter方法

                public String getPassword()

                 {

                        return password;

                 }

                 //password属性的setter方法

                 public void setPassword(String password)

                  {

                            this.password = password;

                   }

                   //处理用户请求的execute方法

                   public String execute() throws Exception

                   {

                              //如果用户名为scott,密码为tiger,则登录成功

                               if (getUsername().equals("scott")

                                      && getPassword().equals("tiger") )

                               {

                                    return "success";

                                }

                                 else

                                 {

                                    return "error";

                                   }

          }

}

通过查看上面的Action代码,发现该ActionWebWork中的Action更彻底,该Action无需实现任何父接口,无需继承任何Struts 2基类,该Action类完全是一个POJO(普通、传统的Java对象),因此具有很好的复用性。

归纳起来,该Action类有如下优势:

—   Action类完全是一个POJO,因此具有很好的代码复用性。

—   Action类无需与Servlet API耦合,因此进行单元测试非常简单。

—   Action类的execute方法仅返回一个字符串作为处理结果,该处理结果可映射到任何的视图,甚至是另一个Action

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值