首先,可以通过myeclipse新建一个web工程,然后在该工程下右键–myeclipse–add Struts Capablities 来添加struts2的配置文件,
知识点包括:
1.新建自己的一个struts2项目
2.动态方法调用,有三种方式(推荐使用通配符)
3.指定多个配置文件
4.Struts2后缀
5. 默认action一般用于找不到网页的错误处理,使用户体验更加 友好
6.接收参数
1,使用Action的属性接受参数
2,使用DomainModel接收参数
3,使用ModelDriven接收参数 (推荐使用这种)
成功之后,在web.xml 文件中有以下代码
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
现在用的都是org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter过滤器
Myaction.java
package com.bright.actiom;
import com.opensymphony.xwork2.ActionSupport;
public class Myaction extends ActionSupport {
@Override
public String execute() throws Exception {
System.out.println("执行Action!");
return SUCCESS;
}
public String add(){
return "add";
}
public String update(){
return "update";
}
}
Struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"struts-2.1.7.dtd" >
<struts>
<package name="default" namespace="/" extends="struts-default">
<action name="helloWorld" class="com.bright.actiom.Myaction">
<!-- result中不指定name type 属性,默认是SUCCESS -->
<result>/result.jsp</result>
</action>
<!--
动态方法调用
第一种方式指定method属性,比较麻烦,第二章方式“感叹号方式”,不推荐使用 -->
<action name="addAction" method="add" class="com.bright.actiom.Myaction">
<result>/add.jsp</result>
</action>
<action name="updateAction" method="update" class="com.bright.actiom.Myaction">
<result>/update.jsp</result>
</action>
<!-- 第三种方法,推荐大家使用!通配符方式 -->
<action name="helloWorld_*" method="{1}" class="com.bright.actiom.Myaction">
<result>/result.jsp</result>
<result name="add">/{1}.jsp</result>
<result name="update">/{1}.jsp</result>
</action>
<!-- 还可以拓展到下面 ,这也是以后开发中常用到的,但是{1}注意要是类的名称!-->
<action name="*_*" method="{2}" class="com.bright.actiom.{1}">
<result>/result.jsp</result>
<result name="add">/{2}.jsp</result>
<result name="update">/{2}.jsp</result>
</action>
<!--
指定多个配置文件
struts2里面可以指定多个配置文件,用<include file="helloworld.xml"></include>
但是这个文件里面也必须包含Struts2配置文件里面包含的所有内容
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"struts-2.1.7.dtd" >
<struts>
.....
.....
</struts>
-->
<!--
默认action
一般用于找不到网页的错误处理,使用户体验更加 友好 (妈的,怎么弄懂不成功,老报错,反正原理是这样,以后遇到了,具体再解决)
<default-action-ref name="index"></default-action-ref>
<action name="index">
<result>/error.jsp</result>
</action>
-->
<!--
struts2后缀
-->
</package>
</struts>