美文网首页我爱编程
初见SpringMVC之json交互

初见SpringMVC之json交互

作者: 涂印 | 来源:发表于2018-04-12 10:21 被阅读0次
    初见SpringMVC之json交互

    JSON数据是一种存储数据的格式,前后台之间通过json数据进行交互是非常常见的应用场景。SprinMVC提供了JSON数据的支持,可以将携带的json字符串转换成java对象,也可将java对象转换成json字符串。

    1. 导入JSON相关的包
    图 1.1 完成json数据转换需要的包
    1. SpringMVC将json转换成java对象
    • 在WebConten目录下,创建一个json.html,该html中,利用ajax完成发送网络请求,并且携带的参数是json数据
    <!DOCTYPEhtml>
    <html>
    <head>
    <metacharset="UTF-8">
    <scripttype="text/javascript" src="http://localhost:8080/HelloSpringMV/js/jquery-1.11.3.min.js"></script>
    <title>hiJson</title>
    <scripttype="text/javascript">
        functionhelloJson(){
           alert("发送请求");
            var userName = $("#userName").val();
            var password =$("#password").val();
            $.ajax({
                url:"http://localhost:8080/HelloSpringMV/helloJson",
                type:"post",
                data:JSON.stringify({userName:userName,password:password}),
                asyn:false,
                success:function(data){
                   alert(data.userName);
                   alert(data.password);
                },
                dataType:"json",
                contentType:"application/json;charset=UTF-8"
            });
        }
    </script>
    </head>
    <body>
        用户名<input type="text" name="userName"id="userName"></input></br>
        密码   <input type="text"name="password" id="password"></input></br>
        <input type="button" value="提交" onclick="helloJson()"></input>
    </body>
    </html>
    
    • 创建一个名为JsonController的handler类
     @Controller
    public class JsonController {
        @RequestMapping("/helloJson")
        publicString HelloJson(@RequestBody User user){
           System.out.print(user.toString());
           return "success";
        }
    }
    

    从上述代码可以看见一个新出现的注解,@RequestBody,假如需要将请求参数中的json字符串转换成java对象,就需要配置如下注解。

    • springmvc-config.xml文件中,添加一行配置
    <!-- 配置注解驱动 -->
        <mvc:annotation-driven />
    
    • 测试,在浏览器中访http://localhost:8080/HelloSpringMV/json.html
      图2.1 提交请求
    图2.2服务控制台打印结果
    1. SpringMVC将java对象转换成json字符串
    • 在jsonConroller类中添加一个方法,在方法上面添加@ResponseBody注解,即可将方法的返回对象转换成json数据
    @ResponseBody
        @RequestMapping(value="/helloJson1")
        publicUser HelloJson1(){
           User user = new User();
           user.userName="SmartTu";
           user.password="123";
           returnuser;
        }
    
    • 测试,访问这个url http://localhost:8080/HelloSpringMV/helloJson1
    图3.1返回结果

    从图3.1中可以发现Spring已经将User对象转成成json字符串返回了

    Reference:
    [1] JavaEE企业级应用开发教程[M] 2017.黑马程序员编著
    [2] csdn博客 https://blog.csdn.net/qq_30322803/article/details/78586502

    相关文章

      网友评论

        本文标题:初见SpringMVC之json交互

        本文链接:https://www.haomeiwen.com/subject/rauzhftx.html