亲爱的网友,你能搜到本文中,说明您很希望了解这个问题,以下内容就是我们收集整理的相关资料,希望该答案能满足您的要求

1. 什么是ActionSupport?

ActionSupport是Struts 2框架中的一个重要的Action基类, 它提供了大量的便于操作的方法,以方便Action类中的编程。ActionSupport深受Struts 2框架开发者的青睐,几乎每个基于Struts 2开发源码的Action类都会继承ActionSupport类。

ActionSupport类可以让我们在Action类中少写很多代码,同时还为我们提供了很多较为常见的方法,比如 addFieldError、 addActionMessage 和 getText 方法,这些方法可以让我们在代码编写过程中使用更加方便。

2. 继承ActionSupport有什么好处?

继承ActionSupport类,可以让我们在Action类中重写一些方法,在此基础上在不影响原有逻辑的情况下,添加一些扩展代码。

例如,在Action中实现表单验证时,继承ActionSupport类后,我们可以直接通过调用addErrorMessage或addFieldError方法,将验证结果以错误或错误信息的形式直接添加到Action中。

在ActionSupport类中,还存在着大量其他的方法,比如addActionMessage(), addActionError(), getText(), validate()等等。

3. addActionError()方法

addActionError()方法用于向Action中添加全局错误信息。全局错误信息表示全局有效的错误信息,一般是经过一些全局性的验证后得到的。

该方法的使用方式为:addActionError(\"错误信息\");

4. addActionMessage()方法

addActionMessage()方法用于向Action中添加全局信息。 全局信息表示全局有效的信息,一般是经过一些全局性的处理后得到的。

使用方式为:addActionMessage(\"信息\");

5. getText()方法

getText()方法用于返回指定struts.properties、Xwork提供的国际化资源文件、或指定的资源包中的文本。

使用方式如下:

在struts.xml中添加资源文件

在message.properties中设置国际化提示信息key和msg

enter.name=请输入姓名

在Action中使用getText()方法获取国际化提示信息

String msg = this.getText('enter.name');

6. validate()方法

validate()方法是ActionSupport中提供的一个验证方法,该方法主要用于Action的表单验证。Validate方法会在 Action 的方法调用前被调用,如果验证失败会返回 INPUT。

使用实例:

public void validate() {

if (StringUtils.isBlank(name)) {

addFieldError(\"name\", \"用户名不能为空!\");

}

if (StringUtils.isBlank(password)) {

addFieldError(\"password\", \"密码不能为空!\");

}

}

7. addFieldError()方法

addFieldError()方法用于向Action中添加局部错误信息。局部错误信息是表单域级别的,这种类型的信息是在用户提交表单时,只针对某个或某几个表单项的错误提示。使用方式为:addFieldError(\"表单字段名\", \"错误信息\");

8. 在Action中使用ActionSupport的方法

首先在Action类中继承ActionSupport类, 然后在需要使用ActionSupport类的方法中调用ActionSupport提供的方法即可。以下是一个简单的实例:

public class UserAction extends ActionSupport implements ModelDriven {

private User user = new User();

public String save() {

if (user != null) {

userService.save(user);

addActionMessage(\"用户添加成功!\");

return SUCCESS;

}

else {

return ERROR;

}

}

}

在以上代码中,我们继承了ActionSupport类, 运用了ActionSupport提供的addActionMessage方法,向Action中添加全局信息。

除此之外,ActionSupport中还存在着很多其它的方法,实际上我们在开发中,使用它们的频率也是非常之高,它们的作用也确实是非常之大。在使用的过程中,如果需要进行更加多样化的扩展,还可以按照自己的业务需要进行重写,一点也不会影响程序的正常运行。ActionSupport为我们提供了更加方便的开发方式,是Struts 2框架中绕不开的重要部分。

1. Action

Action 是一个 Struts 框架中的基本概念,它代表客户端请求要执行的一个操作,它是一个 Java 类,它通常是在 Java Web 应用程序中实现的,由框架调用,可以是一个简单的 Java 方法或一个 JavaBean 或 POJO。Action 将处理客户端请求中的数据并返回要渲染页面的数据或重定向到另一个页面或动作。

2. ActionSupport

ActionSupport 是一个 Struts2 框架中的基本概念,它代表登录、注册、展示 或删除等操作,它是 Action 类的一个子类,它提供了许多有用的方法来向 Struts2框架发送数据和处理错误消息,它实现了 Struts2 的 Action 接口和 ValidationAware 接口,提供了表单数据验证和国际化信息支持等各种服务。

区别

1. 继承关系不同

Action 类是一个类,它直接实现 Struts 接口,而 ActionSupport 类是 Action 类的子类。

2. 提供的功能不同

Action 类只是一个普通的类,它没有提供任何有用的功能,而 ActionSupport 类实现了 Struts2 框架提供的 Action 接口和 ValidationAware 接口,因此它提供了许多有用的功能,例如表单数据验证和国际化信息支持等。

3. 错误处理机制不同

Action 类不提供任何错误处理机制,开发人员必须自己为应用程序实现错误处理机制,而 ActionSupport 类提供了许多有用的方法来处理错误消息,例如 addActionError()方法调用来添加错误消息,addError()方法调用来添加字段错误消息等。

4. 相关的区别

Action 类实现了一个基本的 CRUD 操作,而 ActionSupport 类适用于自定义和复杂的行为,因为它提供了许多有用的方法和验证机制。

5. 适用场景不同

Action 类适用于开发人员需要快速实现基本的操作时,而 ActionSupport 类适用于需要使用 Struts2 提供的验证机制、错误处理机制和其他功能的高级应用程序。

不知这篇文章是否帮您解答了与标题相关的疑惑,如果您对本篇文章满意,请劳驾您在文章结尾点击“顶一下”,以示对该文章的肯定,如果您不满意,则也请“踩一下”,以便督促我们改进该篇文章。如果您想更进步了解相关内容,可查看文章下方的相关链接,那里很可能有你想要的内容。最后,感谢客官老爷的御览