zoukankan      html  css  js  c++  java
  • RESTful风格

    RESTful风格特点:

    1. 每一个URL代表1种资源。
    2. 哭护短使用get,post,put,delete标识CRUD,get用来获取资源,post用来新建资源,put用来更新资源。delete用来删除资源。
    3. 通过资源的表现形式来操作资源。

    RESTful的各种用法:

           /*

            * RESTful风格

            * user/1

            * value="{uid}":接收网页传的参数uid

            * method=RequestMethod.GET:处理get请求

            * @PathVariable("uid") String id:把uid的值赋给形参id

            *

            */

           @RequestMapping(value="{uid}",method=RequestMethod.GET)

           public ModelAndView selectById(@PathVariable("uid") String id) {//查询

                  ModelAndView mv=new ModelAndView("index");

                  System.out.println(id+"selectById");

                  return mv;

           }

           @RequestMapping(method=RequestMethod.POST)

           public ModelAndView insert(User user) {//添加

                  ModelAndView mv=new ModelAndView("index");

                  System.out.println(user+"insert");

                  return mv;

           }

           /*

            * 使用PUT,和DELETE是要先配置一个spring的将post转换为put或delete的过滤器

            * 在传参数时,加一个      _method:put(或delete):用来告诉spring真正的请求方式

            * 在Controller可以加@ResponseBody注解(这样就不会有405错误)

            * put基本是ajax,这个方法的返回类型是ModelAndView会报405

            */

           @RequestMapping(method=RequestMethod.PUT)

           @ResponseBody

           public String update(User user) {//更新

                  System.out.println(user+"update");

                  return "index";

           }

           @RequestMapping(value="{uid}",method=RequestMethod.DELETE)

           @ResponseBody

           public String delete(@PathVariable("uid") String id) {//删除

                  System.out.println(id+"delete");

                  return "index";

           }

    springMVC配置文件中配置将post请求转换为put或delete请求的过滤器

      <!-- 该过滤器将post请求转换为put或delete -->

      <filter>

          <filter-name>hiddenHttpMethodFilter</filter-name>

          <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>

      </filter>

      <filter-mapping>

          <filter-name>hiddenHttpMethodFilter</filter-name>

          <url-pattern>/*</url-pattern>

      </filter-mapping>

  • 相关阅读:
    LeetCode 461. Hamming Distance
    LeetCode 442. Find All Duplicates in an Array
    LeetCode 448. Find All Numbers Disappeared in an Array
    LeetCode Find the Difference
    LeetCode 415. Add Strings
    LeetCode 445. Add Two Numbers II
    LeetCode 438. Find All Anagrams in a String
    LeetCode 463. Island Perimeter
    LeetCode 362. Design Hit Counter
    LeetCode 359. Logger Rate Limiter
  • 原文地址:https://www.cnblogs.com/kfsrex/p/11469704.html
Copyright © 2011-2022 走看看