其實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!