其實struts2通過action返回json挺簡單的,但是就是老要忘,所以索性寫在博客上。好的,開始。
首先是引入必須的jar包:
struts2-json-plugin-2.3.24.jar
然後我們再寫一個簡單的action
package com.mz.action;
import com.mz.entity.User;
import com.opensymphony.xwork2.ActionSupport;
public class JsonAction extends ActionSupport{
private User user;
public String execute() {
user = new User();
user.setId(123);
user.setUsername("Irasel");
return SUCCESS;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
就是一個很簡單的action,給user對象賦值然後傳回然後返回success。
User類裡面有兩個屬性,一個id一個username,以及對應的get和set方法。
主要是配置配置文件:
<!-- 配置一個返回json字符串的action -->
<package name="resultJson" namespace="/" extends="json-default">
<action name="resultJson" class="com.mz.action.JsonAction">
<result name="success" type="json">
<!--root是ognl表達式的一部分不能更換 -->
<param name="root">user</param>
</result>
</action>
</package>
這裡的root是ognl表達式的一個屬性,不能換!不能換!不能換!(重要的事情說三遍)
啟動tomcat,訪問:http://localhost:8080/spring-struts/resultJson(這裡的路徑可能不一樣)
如圖所示:

這樣子就算成功在前台返回json對象了,ok!