struts2 ajax 怎么配置 后台返回值
时间: 2024-05-05 16:21:40 浏览: 127
配置 Struts2 Ajax 的方式有两种:
1. 通过 Struts2 提供的 `@Result` 注解配置
在 Action 方法上使用 `@Result` 注解,将返回值指定为 JSON 类型,并设置 `params` 参数为 `contentType="application/json;charset=UTF-8"`,示例如下:
```
@Action(value = "ajaxTest", results = { @Result(name = "success", type = "json", params = { "contentType", "application/json;charset=UTF-8" }) })
public String ajaxTest() {
// 处理业务逻辑
return "success";
}
```
2. 在配置文件中配置
在 Struts.xml 中添加如下配置,将返回值指定为 JSON 类型,并设置 `contentType="application/json;charset=UTF-8"`:
```
<package name="ajax" extends="json-default">
<action name="ajaxTest" class="com.example.AjaxAction">
<result type="json">
<param name="contentType">application/json;charset=UTF-8</param>
</result>
</action>
</package>
```
无论使用哪种方式配置,后台返回值只需要返回一个符合 JSON 格式的字符串即可。可以使用 Struts2 提供的 JSON 插件将 Java 对象转换为 JSON 字符串,示例如下:
```
public class AjaxAction extends ActionSupport {
private String message;
public String ajaxTest() {
// 处理业务逻辑
message = "Hello, Ajax!";
return SUCCESS;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
```
在 Action 类中添加 `message` 属性,并提供对应的 getter 和 setter 方法,然后在 Action 方法中将其赋值为需要返回的字符串。在配置文件或者使用注解时,指定返回类型为 JSON 类型,就可以返回一个 JSON 格式的字符串了。例如:
```
{
"message": "Hello, Ajax!"
}
```
阅读全文