色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java action json

Java Action是Struts2框架中一個非常重要的組件,它用于接收請求并處理業(yè)務(wù)邏輯,然后將結(jié)果返回給用戶。在實際開發(fā)中,我們經(jīng)常需要將處理結(jié)果以JSON格式返回給前端頁面,這就需要使用Java Action JSON。

public class DemoAction extends ActionSupport {
private String name;
private int age;
//getter和setter方法省略
public String execute() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", name);
map.put("age", age);
JSONObject jsonObject = JSONObject.fromObject(map);
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("application/json;charset=UTF-8");
PrintWriter out = null;
try {
out = response.getWriter();
out.write(jsonObject.toString());
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) out.close();
}
return null;
}
}

以上代碼是一個簡單的Java Action,它首先將需要返回的數(shù)據(jù)放入一個Map中,然后將Map轉(zhuǎn)換為JSON格式的數(shù)據(jù),最后使用HttpServletResponse對象將JSON數(shù)據(jù)返回給前端頁面。

在實際開發(fā)中,我們還可以使用Struts2框架提供的JSON插件來簡化這個過程。只需要在struts.xml配置文件中添加以下代碼:

<package name="json" extends="json-default">
<action name="demo" class="action.DemoAction">
<result type="json"></result>
</action>
</package>

然后在Java Action中使用一個POJO類來存儲需要返回的數(shù)據(jù):

public class DemoAction extends ActionSupport {
private User user;
//getter和setter方法省略
public String execute() {
user = new User("Tom", 20);
return SUCCESS;
}
}

最后,在前端頁面中可以通過JSON對象來獲取數(shù)據(jù):

$.getJSON("demo.action", function(data) {
alert("Name: " + data.user.name + "\n" + "Age: " + data.user.age);
});

上述代碼中,我們使用jQuery庫中的getJSON方法來發(fā)送請求并獲取返回的JSON數(shù)據(jù)。然后通過data對象來獲取Java Action返回的數(shù)據(jù)。