文章目录
- 方法一: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{
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
System.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{
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
System.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>
运行结果
在 项目 运行