Sping MVC用@ResponseBody返回json入门实例

来源:互联网 发布:mac防火墙需要打开吗 编辑:程序博客网 时间:2024/04/27 13:03

大致思路:前台用ajax 上传表单参数------>到controller利用@ResponseBody转换成json数据------>前台接收

 

前台

test.jsp

<%@ 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>  <script type="text/javascript" src="static/js/jquery-3.2.1.slim.min.js"></script>  <script type="text/javascript" src="static/js/jquery.js"></script> <script type="text/javascript" src="static/js/jquery.min.js"></script> <meta http-equiv="Content-Type" content="text/html; charset=utf8">  <title>Insert title here</title>  <script type="text/javascript" language="javascript">    function requestJson() {        $.post("${pageContext.request.contextPath}/music/login1.do",                function(data) {                    console.log(data)                    alert("成功"+JSON.stringify(data))                }, "json");            }</script> </head>  <body>     <form id="jsonh">        <input type="button" value="开始" onclick="requestJson()" />    </form></body>  </html>

${pageContext.request.contextPath}不懂的看这篇博客http://blog.csdn.net/mint6/article/details/77381444

前台主要是  点击按钮     开始---->触发onclick点击requestJson()函数---->post方式,提交路径---->然后是一个回调函数

data接收从后台传来的数据

 

LoginController.java

package com.music.controller;import java.util.HashMap;import java.util.Map;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller  @RequestMapping("/music")public class LoginController {          @RequestMapping("/login1.do")       @ResponseBody        public  Map<String,Object> login(){                         Map<String,Object> map = new HashMap<String,Object>();                map.put("a", "1");              for (String s : map.keySet()) {                  System.out.println("key:" + s);                  System.out.println("values:" + map.get(s));                  }            return map;          }  }

前台根据路径进入login函数--->这里为了演示自己写了一个map并put保存数据--->然后@ResponseBody转换格式---->然后返回前台,回调函数接收

 

如果出现406错误 看这个http://blog.csdn.net/mint6/article/details/77464724

原创粉丝点击