Spring MVC对RESTful的支持

什么是RESTful具体可以看这篇博客
理解RESTful架构 - 阮一峰的网络日志

http://www.ruanyifeng.com/blog/2011/09/restful
SpringMVC主要对“每一个URI代表一种资源”这一软件开发理念进行了实现。
普通的URI:http://localhost:8080/items/editItems.action?id=1&….
URI的RESTful实现:http:// localhost:8080/items/editItems/1
在web.xml里边配置

    <!-- restful的配置 -->
    <servlet>
        <servlet-name>springmvc_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>

    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc_rest</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

来映射所有的访问资源

    //@RequestMapping中指定restful方式的url中的参数,参数需要用{}包起来
    //@PathVariable将url中花括号中的参数和形参进行绑定
    @RequestMapping("/test/{name}/{age}")
    public void requestKeyValue(@PathVariable("name")String n,@PathVariable("age")Integer i)throws Exception{

        System.out.println(n+" "+i);
    }

在浏览器中访问在浏览器中访问http://localhost:8080/springmvctest/test/小明/22
当DispatcherServlet拦截/开头的所有请求,对静态资源的访问就会报错。需要通过设置对静态资源进行解析。
在springmvc.xml中配置

<mvc:resources mapping="/js/**" location="/js/"/>

这样访问/js/**的url就会从工程下的/js/下解析。
不要配置成

<mvc:resources mapping="/js/*" location="/js/"/>

这样只是访问js下边的子路径可以访问到,孙路径就不行了,

访问http://localhost:8080/springmvctest/js/jquery-1.8.3.min.js是可以访问到的

但访问http://localhost:8080/springmvctest/js/a/jquery-1.8.3.min.js就访问不到了。

所以要配置成**这样访问js下的所有东西就都可以访问到了,不管有多少层。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 18
    评论
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值