您的位置 首页 > 数码极客

javaaction如何接收数组

如何实现Action类:对于Struts2应用开发者而言,Action才是应用的核心,开发者需要提供大量Action类,并在S文件中配置Action。Action类里包含了对用户请求的处理逻辑,Action类也被称为业务控制器。

相对于Struts1而言,Struts2采用了低侵入式的设计,Struts2不要求Action类继承任何的Struts2基类,或者实现热河Struts2接口。在这种设计方式下,Struts2的Action是一个普通的POJO(通常应该包含一个无参数的execute方法),从而有很好的代码复用性。

Struts2通常直接使用Action来封装HTTP请求参数,因此,Action类里还应该包含与参数对于金属,并且,为这些属性提供对应的setter和getter方法。

例如,用户请求包含User和pass两个请求参数,那么Action类应该提供user和pass两个属性来封装用户的请求参数,并且为user和pass提供对应的setter和getter方法。下面是处理请求的Action类的代码片段。

//处理用户请求的Action类,只是一个POJO,无须继承任何基类,无须实现任何接口

public class LoginAction

{

//提供两个属性来封装HTTP请求参数

privata string user;

privata string pass;

//user 属性的 getter和setter方法

public void setUser(string user)

{

= user;

}

public string getUser()

{

return ();

}

//pass 属性的 getter 和setter 方法

public void setpass(string pass)

{

= pass;

}

public string getpass()

{

return ();

}

//Action类默认处理用户请求的方法:execute 方法

public String execute()

{

...

//返回处理结果字符串

return resultstr;

}

}

上面的Action类只是一个普通JAVA类,这个JAVA类提供了两个属性:user和pass(如程序中粗体字代码所示),并为这两个属性提供了setter和getter方法,这两个属性分别对应两个HTTP请求参数。上面LoginAction中的execute()方法就是处理用户请求的逻辑控制方法。

提示:即使Action处理的请求包含user和pass两个HTTP请求参数,Action类也可以不包含user和pass Field。因为系统是通过对应的setter和getter方法来处理请求的参数的,而不是通过Field名来处理请求参数的。也就是说,如果包含了user的HTTP请求参数,Action类里是否包含user Field不重要,重要的是需要包含void setUser(String user)和String getUser()两个方法。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“javaaction如何接收数组”边界阅读