文章目录
- 方法一:Action类是一个POJO类(简单的Java类)
- ActionDemo2.java
- struts_demo2.xml
- struts.xml
- 运行结果
- 其他
- strutsz_demo1.xml
- 方法二:实现一个Action的接口
- ActionDemo2_2.java
- struts_demo2.xml
- 运行结果
- 推荐!!!方法三:Action类继承ActionSupport类
- struts_demo2.xml
- 运行结果
action一共有三种编写方法:
方法一:Action类是一个POJO类(简单的Java类)
新建包,action类,模块化的struts_demo2.xml的文件
ActionDemo2.java
package com.zhang.struts2.demo2;
/*** * @author zhangwt*Action的编写方式:Action类是一个POJO类,(简单的Java类)*/
public class ActionDemo2 {public String execute(){System.out.println("ActionDemo2执行了~~~~~~~");return null;}
}
struts_demo2.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- Struts2为了管理Action的配置,通过package进行管理,action类在package里 --><!-- 配置Struts2的包================== --><!--package的name随便起名,但是不能重复 --><package name="demo2" extends="struts-default" namespace="/"><action name="ActionDemo2" class="com.zhang.struts2.demo2.ActionDemo2"></action></package>
</struts>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- Struts2为了管理Action的配置,通过package进行管理,action类在package里 --><!-- 配置Struts2的包================== --><!-- 使用模块化将action的配置包含进来 --><include file="com/zhang/struts_demo1.xml" /><include file="com/zhang/struts2/demo2/struts_demo2.xml"></include>
</struts>
运行结果
从 项目 运行
其他
strutsz_demo1.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- Struts2为了管理Action的配置,通过package进行管理,action类在package里 --><!-- 配置Struts2的包================== --><!--package的name随便起名,但是不能重复 --><package name="test" extends="struts-default" namespace="/"><!-- 配置Action============== --><action name="hello" class="com.zhang.hello"><!-- 配置页面的跳转============== --><result name="success">/success.jsp</result></action></package>
</struts>
方法二:实现一个Action的接口
先写一个action类,再写配置文件,再在 项目 运行
ActionDemo2_2.java
package com.zhang.struts2.demo2;import com.opensymphony.xwork2.Action;/*** Action的编写 * @author zhangwt* 实现接口的这种方式,提供了五个常量(五个逻辑视图的名称)* SUCCESS :成功* ERROR :失败* LOGIN :登录出错页面跳转* INPUT :表单的时候出错* NONE :不跳转**/
public class ActionDemo2_2 implements Action{@Overridepublic String execute() throws Exception {// TODO Auto-generated method stubSystem.out.println("ActionDemo2_2执行了~~~~这是Action的第二个编写方法:实现一个Action的接口");return null;}}
struts_demo2.xml
运行结果
在 项目 运行
推荐!!!方法三:Action类继承ActionSupport类
先写一个action类,再写配置文件,再在 项目 运行
ActionDemo2_3.java
package com.zhang.struts2.demo2;import com.opensymphony.xwork2.ActionSupport;/*** * @author zhangwt*Action的编写方式三:Action类继承ActionSupport类*推荐使用这种方式,ActionSupport类中提供了数据校验,国际化等一系列操作的方法*/
public class ActionDemo2_3 extends ActionSupport{@Overridepublic String execute() throws Exception {// TODO Auto-generated method stubSystem.out.println("ActionDemo2_3执行啦~~~这是action类的第三种编写方式:Action类继承ActionSupport类");return NONE;}
}
struts_demo2.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts><!-- Struts2为了管理Action的配置,通过package进行管理,action类在package里 --><!-- 配置Struts2的包================== --><!--package的name随便起名,但是不能重复 --><package name="demo2" extends="struts-default" namespace="/"><action name="ActionDemo2" class="com.zhang.struts2.demo2.ActionDemo2"></action><action name="ActionDemo2_2" class="com.zhang.struts2.demo2.ActionDemo2_2"></action><action name="ActionDemo2_3" class="com.zhang.struts2.demo2.ActionDemo2_3"></action></package>
</struts>
运行结果
在 项目 运行