SpringMVC中对RESTful风格的支持(下)

RESTful支持

RESTful

概述

RESTful也称之为REST(Representational State Transfer),可以理解为一种软件架构风格或者是设计风格

简单来说,RESTful风格就是把请求参数变成请求路径的一种风格

举个例子

http://.../queryItems?id=1

而采用RESTful风格后,URL地址请求就会变成

http://.../items/1

从上面两个请求我们可以看出,RESTful风格中的URL将请求参数id=1变成了请求路径的一部分,并且URL中的queryItems也变成了items

RESTful风格在HTTP请求中,使用put\delete\post\get方式分别对应添加\删除\修改\查询操作,不过在国内开发一般规范中,还是只使用post和get方式来实现业务的增删查改操作(CRUD)

在SpringMVC中除了支持JSON数据交互之外,同时也支持RESTful风格的编程

用户信息的查询(Example)

在控制器中创建

//使用RESTful风格
    @RequestMapping("/user/{id}")
    @ResponseBody
    public User selectUser(@PathVariable("id") String id){
        //查看数据的接收
        System.out.println("id->"+id);
        User user = new User();
        //模拟根据id查询出到用户对象数据
        if (id.equals("1234"))user.setUserName("tom");
        return user;
    }

编写JSP

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>RESTful测试</title>
    <script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
    <script type="text/javascript">
        function search() {
            //获取输入的查询编号
            var id = $("#number").val();
            $.ajax({
                url:"${pageContext.request.contextPath}/users/user/"+id,
                type:"GET",
                //定义回调响应的数据格式为JSON字符串
                dataType:"JSON",
                success:function (data) {
                    if (data.userName != null) {
                        alert("您查询的用户:"+data.userName);
                    }else{
                        alert("没有查找到id为:"+id+"的用户")
                    }
                }
            });
        }
    </script>
</head>
<body>
<form>
    编号: <input type="text" name="number" id="number"> <input type="button" value="确定" onclick="search()">

</form>
</body>
</html>

运行效果


本作品采用知识共享署名 4.0 国际许可协议进行许可。

如果可以的话,请给我钱请给我点赞赏,小小心意即可!

Last modification:April 27th, 2019 at 02:38 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment