SpringMVC从Controller中响应json数据
2013-11-05 14:31
204 查看
在页面上异步获取Controller中响应的json数据。 页面代码: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>User List</title> <script type="text/javascript" src="${pageContext.request.contextPath}/resource/script/jquery-1.9.1.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#button_getUser").click(function(){ //异步请求json数据 $.ajax({ type:"POST", url:"${pageContext.request.contextPath}/user/getUserList", success:function(data){ //迭代返回的json数据 $.each(data,function(i,user){ $("#results").append(user.userName+"---"+user.password+"<br>"); }); }, error:function(e) { alert("出错:"+e); } }); }); }); </script> </head> <body> <input type="button" id="button_getUser" value="获取用户列表"><br> 用户信息:<br> <div id="results"> </div> </body> </html> Controller中的代码: @RequestMapping("/getUserList") public String getUserList(HttpServletResponse response) { response.setCharacterEncoding("UTF-8"); response.setContentType("application/json"); List<User> userList = getUsers(); Gson gson = new Gson(); String json = gson.toJson(userList); System.out.println("json---"+json); PrintWriter out = null; try { out = response.getWriter(); out.write(json); out.flush(); }catch(Exception e) { e.printStackTrace(); }finally { if(out != null) { out.close(); } } return "/user/userList"; } private List<User> getUsers() { List<User> users = new ArrayList<User>(); User user1 = new User(); user1.setUserName("李坏"); user1.setPassword("LiHuai"); User user2 = new User(); user2.setUserName("阿飞"); user2.setPassword("aFei"); User user3 = new User(); user3.setUserName("陆小凤"); user3.setPassword("LuXiaoFeng"); users.add(user1); users.add(user2); users.add(user3); return users; }
或者使用@ResponseBody,需要用到jackson相关的包。 页面: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>User List</title> <script type="text/javascript" src="${pageContext.request.contextPath}/resource/script/jquery-1.9.1.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#button_getUser").click(function(){ //异步请求json数据 $.ajax({ type:"POST", url:"${pageContext.request.contextPath}/user/getUserList", success:function(data){ //迭代返回的json数据 $.each(data.users,function(i,user){ $("#results").append(user.userName+"---"+user.password+"<br>"); }); }, error:function(e) { alert("出错:"+e); } }); }); }); </script> </head> <body> <input type="button" id="button_getUser" value="获取用户列表"><br> 用户信息:<br> <div id="results"> </div> </body> </html> Controller: @RequestMapping("/getUserList") @ResponseBody public Map<String,Object> getUserList() { Map<String,Object> resultMap = new HashMap<String,Object>(); List<User> userList = getUsers(); resultMap.put("users", userList); return resultMap; }
相关文章推荐
- SpringMVC从Controller中响应json数据
- SpringMVC从Controller中响应json数据
- SpringMVC从Controller中响应json数据
- SpringMVC从Control中响应json数据
- 【SpringMVC】异步发送表单数据到JavaBean,并响应JSON文本返回(十七)
- SpringMVC之Controller传递JSON数据到页面
- springmvc之json数据交互controller方法返回值为简单类型
- 详解springmvc之json数据交互controller方法返回值为简单类型
- SpringMVC中controller接收Json数据
- SpringMVC中controller返回json数据的两种方法
- 通过Ajax进行POST提交JSON类型的数据到SpringMVC Controller的方法
- springmvc中异步发送表单数据到Bean,并响应JSON文本返回
- springmvc之json数据交互controller方法返回值为简单类型
- SpringMVC从Controller中获取json数据
- ajax发送json数据到springmvc的controller
- SpringMVC之Controller传递JSON数据到页面
- SpringMVC之Controller传递JSON数据到页面
- springMvc接收/响应json数据
- springMvc中前台ajax传json数据后台controller接受对象为null