struts2+jquery+json整合

來源:互聯網
上載者:User

一直以來都是使用SpringMVC,最近不是很忙所以學習了一下Struts2.以前在項目中很多時候都是使用JQuery請求的Json。

當然在SpringMVC中擷取Json也是有多種方式的,比如:

JSONArray json = JSONArray.fromObject(childNode.toArray());String s = json.toString();response.setContentType("text/json; charset=UTF-8");response.setCharacterEncoding("UTF-8");try {response.getWriter().write(s);} catch (IOException e) {e.printStackTrace();}

我大多數情況下都是使用Gson的,上述樣本使用了json-lib-2.3-jdk15.jar。

下面我將使用struts2+jquery+json整合擷取JSON,需要lib中包含struts2-json-plugin-2.3.7.jar和json-lib-2.3-jdk15.jar。

UserAction:

public String jsonUser() throws Exception{UserService uService=new UserService();List<User> list=uService.findByAll();Gson gson=new Gson();result=gson.toJson(list);for (User user : list) {System.out.println(gson.toJson(list)+"====================="+user.getId()+"--"+user.getName());}return SUCCESS;}

其中result是UserAction的一個屬性變數:

// 返回結果給用戶端private String result;public String getResult() {return result;}public void setResult(String result) {this.result = result;}

struts.xml:

<package name="jsonUser" extends="json-default"><!-- 擷取所有User的JSON --><action name="jsonuser" class="com.mzsx.user.action.UserAction" method="jsonUser"><result type="json"><param name="root">result</param></result></action></package>

最值得注意的是extends="json-default",<resulttype="json">和<paramname="root">result</param>。

為了簡便,我在前端頁面的js為:

$(function(){alert("開始");$.getJSON('http://localhost:8080/hibernate/jsonuser.action',function(data){alert(data);});});

運行結果:

650) this.width=650;" title="111.png" src="http://www.bkjia.com/uploads/allimg/131228/14160014R-0.png" alt="110248689.png" />

本文出自 “夢朝思夕” 部落格,請務必保留此出處http://qiangmzsx.blog.51cto.com/2052549/1305058

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.