06restful

作者: RobertLiu123 | 来源:发表于2019-08-05 08:41 被阅读0次

    https://www.cnblogs.com/huaxingtianxia/p/5579615.html

    REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。
    url不变,通过改变method类型,标识我的请求具体做什么
    http://ip:port/usermanager/username/password
    form----method=*****
    第一个四个表示操作方式的动词:GET、POST、PUT、DELETE。
    GET用来获取资源(查询)
    POST用来新建资源(也可以用于更新资源 )(添加),
    PUT用来更新资源(update),
    DELETE用来删除资源。(delete)

    第二个 在url里带参数
    http://ip:port/usermanager/add/${name}/{password}

    实现

    1)配置web.xml里新增配置

     <!-- 支持restful -->
     <servlet>
        <servlet-name>dispatcher-rest</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher-rest</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    
    

    2)写示例程序

    @Controller
    @RequestMapping("/rest")
    public class RestController {
       @RequestMapping("/del/{id}")
       public ModelAndView delById(@PathVariable("id") int id){
           System.out.println(id);
        return null;
        }
       @RequestMapping("/add/{name}/{password}")
       public ModelAndView add(@PathVariable("name") String username,@PathVariable("password") String pwd){
           System.out.println(username);
           System.out.println(pwd);
        return null;
       }
       @RequestMapping("/update/name/{name}/password/{password}")
       public ModelAndView update(@PathVariable("name") String username,@PathVariable("password") String pwd){
           System.out.println(username);
           System.out.println(pwd);
        return null; 
    
    }
    }
    
    

    3)测试
    在浏览器地址栏里输入网址

    http://localhost:8081/ch01-springmvc01/rest/del/123
    http://localhost:8081/ch01-springmvc01/rest/add/wang.qj/123456
    http://localhost:8081/ch01-springmvc01/rest/update/name/ggg/password/123456
    
    

    第2节

    静态资源访问权限

    https://blog.csdn.net/rainbow702/article/details/54895470

    配置restful之后,之前的请求http://localhost:8081/ch01-springmvc01/json/goAdd.action中的js会失效,导致请求无法提交到后台。

    两种解决方案:

    1、在springmvc.xml里新增静态资源访问权限,样例代码如下

    <!-- 静态文件访问权限  -->
    <mvc:resources location="/js/" mapping="/js/**"/>
    <mvc:resources location="/css/" mapping="/css/**"/>
    <mvc:resources location="/images/" mapping="/images/**"/>
    
    

    第2种方式

    https://blog.csdn.net/abc997995674/article/details/80513203

    <mvc:default-servlet-handler/>
    

    相关文章

      网友评论

          本文标题:06restful

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