前端传递JSON数据,在后台需要用到Action来解析JSON数据。Action可以获取前端传递过来的JSON数据,并将其转换为Java对象来进行操作。
在Action中可以使用struts2-json-plugin插件来处理JSON数据,使用该插件需要在struts.xml文件中添加如下代码:
<package name="json" namespace="/json" extends="json-default"> <action name="testJson" class="com.example.TestAction"> <!--参数设置--> <result type="json"> <param name="root">jsonData</param> </result> </action> </package>
通过上面的配置,当请求URL为/json/testJson时,会执行TestAction类中的testJson方法,并返回jsonData对象。
在TestAction中需要定义一个与前端JSON数据对应的java类,然后使用该类的实例来进行操作。定义一个User类如下:
public class User { private String username; private String password; // 省略getter和setter }
在TestAction中使用该类的实例来操作JSON数据:
public class TestAction extends ActionSupport { private User user; public User getUser() { return user; } public void setUser(User user) { this.user = user; } public String testJson() { System.out.println(user.getUsername()); // 输出前端传递的username System.out.println(user.getpassword()); // 输出前端传递的password return SUCCESS; } }