教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 小学教育 >

struts2框架 (自动保存的)

来源:网络收集 时间:2026-09-08
导读: Struts2的应用流程 一》:创建jsp页面。 二》:编写Action。 1. 基本知识:Action对象 public interface Action{ public static final String SUCCESS=”success”; //Action执行成功的返回值 public static final String NONE=”none”; //Action执行成功的

Struts2的应用流程

一》:创建jsp页面。

二》:编写Action。

1. 基本知识:Action对象

public interface Action{

public static final String SUCCESS=”success”; //Action执行成功的返回值

public static final String NONE=”none”; //Action执行成功的返回值,

但不用返回到成功页面

public static final String ERROR=”error”; //Action执行失败的返回值

public static final String INPUT=”input”; //需要返回到某个输入信息

页面

public static final String LOGIN=”login”; //需要用户登陆

public String execute() throws Exception;//执行方法

}

Action Support类实现了Action接口。所以我们在编写Action时需要继承Action Support方法。

例如:Public class LoginAction extends Action Support{ }

Action 中默认的是execute()方法,但Struts 2还可以执行其它方法,但是这些方

法必须没有参数,并且返回类型都是String,但可以有throws关键字,当然这些是一般方法。

我们可以用两种方式执行这些方法。

a. 通过URL执行。使用action!method.action的形式访问。(action是struts.xml

配置的)

b. 在struts.xml中用method实行动态action配置。

c. 在Action用@注解通过零配置实现。

三》通过配置文件配置Struts2以便调用Action

1. 在web.xml中配置struts.xml让所写的Action与struts2.关联起来。

<filter>

<filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecut

eFilter

</filter-class>

</filter>

<filter-mapping>

<filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern>

</filter-mapping>

这个配置是和servlet中的格式一样的。

2. Struts2 的核心配置文件:struts.xml

a. 配置Package和名称空间:

<packagename="first"extends="struts-default"

namespace=”bookmanager”><!--定义一个package -->

</package>

配置package目的只有一个,为了分区管理我们配置的<action …></action> Name:package的属性。给这个package起一个名称而已,相当于id属性。Name=login Extends: 必须有,且必须直接或间接继承struts-default。 namespace:给我们配置的Action起一个空间名称。Namespce=”/userLogin”这样我们

在访问这个Action时需要在Action前面加上这个空间名称。

例如<form action=”userLogin/login.action method=”post”>

b. 配置action

<actionname="login"class="userLogin" >

<resultname="success">/welcome.jsp</result> <resultname="login">/index.jsp</result> </action>

<action>的配置是放在<package>包中的。

Name: 给们配置的action起一个名字,也相当一个id属性。

Class: 用哪一个action来处理,这儿就用配置那个Action的url。

例如:class=”com.login.LoginAction”

但是如果此action是用Spring来管理,那么这儿的class就要用<bean>中的name属性值。

<beanid="userLogin"class="com.login.LoginAction"

scope="prototype"

</bean>

<action name=”login” class=”userLogin”>

c. 配置result

<result></result>是用来配置当Action中的返回值为name时,我们将它转到

那个处理页面。

在struts.xml中还可以配置Exception Intercept 同时一些struts.properties的

配置也可以在此进行。例如struts2的属性在struts.xml中就可以用<constant>配置。

当然,我们也可以用Myclipse中自动搭建bliud path.点项目名称,点右键,

myEclipse点要加载的包就行。同时这样会自动生成,struts.xml 也会在web.xml中自动进行配置。

Struts2之所以使用能管理我们Action方法,而且我们也用它来管理Action,是

因为它有两个很重要又很强大的机制。那就是我们常说的数据验证机制与拦截机制。

三》Struts2的拦截器

a. 在Action对象中写一个用于验证的业务方法。

我们通常将验证方法单独放在某一个方法中,这样所有处理请求的方法体

也单独处于一个业务方法中,其命名规范必须是:validate与请求处理方法名

称(首字母必须大写)的组合。如:validateExecute() 。

b. 直接在validate()方法中重写验证的方法体。

com.opensymphony.xwork2.Validateable接口中定义了validate()方法,

ActionSupport类对此接口进行了实现。所以在继承了ActionSupport的Action

中都可以直接重写validate()方法。且如果在此类中有多个其他Action方法,

那么默认在执行每一个请求方法的过程中,都会经过validate()方法的验证处理。

要想那个方法不通过此验证器,就需要为此Action配置

DefaultWorkflowInterceptor拦截器来指定,排除需要验证的方法。因为validate

验证处理是由Struts2 API 中的com.opensymphony.xwork2.interceptor.Default.

WorkflowInterceptor拦截器进行调用的,而DefaultWorkflowInterceptor拦截器

是MethodFilterInterceptor拦截器的子类。DefaultWorkflowInterceptor拦截器

定义在在defaultStack拦截器栈中。而通常情况下,Action配置都需要继承

Struts-default,所以在一个Action 对象中要排除需要验证的方法,可使用以

下代码:

<action name=”loginAction” class=”com.lyq.action.LoginAction>

<interceptor-ref name=”defaultStack”>

<param name=”workflow.excludeMethods”>CheckUser</param>

<param name=”workflow.includeMethods”>execute</param>

<interceptor-ref>

<result name=”input”>/login.jsp</result>

<result>/success.jsp</result>

</action>

workflow.excludeMethods:用来指定排除验证的方法。

workflow.includeMethods:用来指定需要验证的方法。

c. Struts2验证框架:

对于经常使用的验证规则,Struts2已经编写好了验证机制提供给我们,

那就是Struts2验证框架,Struts2验证框架主要是基于拦截器实现的,我们只需要编写一个类似配置文件的验证文件就可。所以此验证文件的命名必须为以下两种方式:

1.ActionName-validation.xml: ActionName:为Action对象的名称。且对象中所

有的方法都会经过此验证文件验证。< …… 此处隐藏:3280字,全部文档内容请下载后查看。喜欢就下载吧 ……

struts2框架 (自动保存的).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/43474.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)