05-springmvc实现restful风格

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/linzhaoliangyan/article/details/88813221

* 一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
* Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格,是对http协议的诠释。
* 资源定位:互联网所有的事物都是资源,要求url中没有动词,只有名词。没有参数
    * https://blog.csdn.net/weixin_44239353/article/details/85304995
   资源操作:使用put、delete、post、get,使用不同方法对资源进行操作。分别对应添加、删除、修改、查询。一般使用时还是post和get。Put和Delete几乎不使用。
* restfull就是 URL请求没有参数 没动词的这么一个开发的风格(style)
* 如果要使用restfull风格的开发方式 ,需要在URL拦截形式 改成 /

* 改成/后项目出现问题


       

* 在DispatcherServlet 配置了"/",意味着拦截所有处理,包括静态资源(css,js,images),但是DispatcherServlet 没有处理这些静态资源

        * 解决方案一

            * Tomcat默认启动DefaultServlet(比DispatcherServlet 先)

 * 只要在我们的工程web.xml配置需要处理的静态资源就可以了

 <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.gif</url-pattern>

    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.jpg</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.bmp</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.png</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.otf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.svg</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.ttf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.woff</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.woff2</url-pattern>
    </servlet-mapping>

  * 访问ok

 * 解决方案二    

            * 使用springmvc<mvc:resources/>配置

 <mvc:resources location="/bootstrap/" mapping="/bootstrap/**"/>
    <mvc:resources location="/bootstraptabs/" mapping="/bootstraptabs/**"/>
    <mvc:resources location="/css/" mapping="/css/**"/>
    <mvc:resources location="/hightchart/" mapping="/hightchart/**"/>
    <mvc:resources location="/images/" mapping="/images/**"/>
    <mvc:resources location="/jquery/" mapping="/jquery/**"/>
    <mvc:resources location="/js/" mapping="/js/**"/>
    <mvc:resources location="/ztree/" mapping="/ztree/**"/>
* location元素表示webapp目录下的static包下的所有文件;
* mapping元素表示以/static开头的所有请求路径,如/static/a 或者/static/a/b;

 

* 项目改成restful风格  

http://...../xxx.do?id=001
http://..../xxx/001
修改工程:使用restful风格
http://localhost:8080/ssm/login
http://localhost:8080/ssm/main
http://localhost:8080/ssm/statistics/ui
http://localhost:8080/ssm/statistics/sex/1001
http://localhost:8080/ssm/statistics/sex/1002/200 

 

 

猜你喜欢

转载自blog.csdn.net/linzhaoliangyan/article/details/88813221