Struts2学习笔记(1)---相关配置

Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。

1创建action对象(三种)

1 创建普通的类,不继承任何类,也不实现接口(不用)

2 创建类实现接口Action

public interface Action{
         public static final String ERROR="error";     
         public static final String SUCCESS="error";     
         public static final String INPUT="error";     
         public static final String LOGIN="error";     
         public static final String NONE="error";     
         public  String execute() throws Exception;           
}

  从action接口可以看到,Action接口定义了五个字符串常量和一个execute方法,每个Action类都实现了

execute方法,该方法返回一个字符串,而接口定义了五个常量用来统一返回值。

public class UserAction extends Action {	
	public String execute() throws Exception{
		return SUCCESS;
		
	}

  

3 创建类继承ActionSupport(重点)

ActionSupport类实现了Action接口,默认的Action实现类,而且里面提供很多默认方法,包括数据校验,国际化信息等,所以一般程序猿定义Action类都会继承ActionSupport类

public class UserAction extends ActionSupport {
	
	public String execute() throws Exception{
		return SUCCESS;
		
	}

  创建Struts.xml配置文件(src目录下)

引入约束

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" 
"http://struts.apache.org/dtds/struts-2.1.dtd">

配置action

	<package name="user" extends="struts-default" namespace="/">
		<!-- name: 访问名称 -->
		<action name="hello" class="cn.entily.action.UserAction" method="{1}">
			<!-- 配置方法的返回值到页面,返回值为空不用写 -->
			<result name="success">/hello.jsp</result>
		</action>
	</package>

配置struts过滤器(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>

  一般在公司开发中都是分模块开发,每个开发人员都要在struts.xml里面配置action,所以一般都同过写另外个xml文件配置action,然后在引入到struts.xml中。

<!--引入xml文件 -->
<include file="com/abc/action/hello.xml"/>

  struts.xml其他配置

全局结果页面

<global-results>
      <result name="success"> /hello.jsp</result>
</global-results>

  result标签还有一个type属性

       type属性表示如何去路径

               默认    转发    dispatcher

               重定向       redirect

posted @ 2017-10-11 11:55  巴_卫  阅读(151)  评论(0编辑  收藏  举报