java之SpringMVC对RESTfull支持的示例分析

这篇文章主要介绍java之SpringMVC对RESTfull支持的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

十年品牌的成都网站建设公司,成百上千家企业网站设计经验.价格合理,可准确把握网页设计诉求.提供定制网站建设、商城网站制作重庆小程序开发、响应式网站等服务,我们设计的作品屡获殊荣,是您值得信赖的专业网站制作公司。

具体如下。

RESTful架构,就是目前流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。RESTful架构对url进行规范,写RESTful格式的url是什么样子的呢?我们一般请求的url是类似这样子的:

http://...../xxx.action?id=001&type=aaa

而REST的url风格是什么样子呢?一般它类似于:

http://..../xxx/001

所以REST有个很明显的特点:使url变得简洁,将参数通过url传到服务端。springmvc也是支持这种REST风格的url的,我们定义一个controller来测试一下:

//查询商品信息,输出json,使用RESTful
@RequestMapping("/itemsView/{id}")
public @ResponseBody ItemsCustom itemsView(@PathVariable("id") Integer id) throws Exception {
  ItemsCustom itemsCustom = itemsService.findItemsById(id);
  return itemsCustom;
}

@ResponseBody是用来将itemsCustom转成json的注解,而@PathVariable注解则是跟REST有关了,@RequestMapping(value=”/ itemsView/{id}”)中的{id}表示一个占位符,那么这里面传过来的值会传到被@PathVariable标记的形参上,如果形参和占位符中的变量一样的话,可以不用再注解中指定,否则注解中要指定这个占位符中的变量(即id)。这样的话,参数就可以通过url传到形参中来了。

但是这样还不行,还要在前端控制器中针对REST进行配置,如下:



  springmvc_rest
  org.springframework.web.servlet.DispatcherServlet

  
    contextConfigLocation
    classpath:spring/springmvc.xml
  



  springmvc_rest
  /

拦截的是所有的url(/),这个配置跟之前配置好的前端控制器是没有冲突的,可以并存。经过这样配置后,就可以在浏览器中输入http://localhost:8080/SpringMVC_Study/itemsView/1来测试返回到浏览器的数据了,可以看到返回一串json数据。

但是有个问题,使用上面的配置后会拦截所有的url,那么对静态资源也会拦截,所以DispatcherServlet也会解析静态资源,但是这样的话就会出错,所以我们要设置一下不让它解析静态资源。如:



如果还有其他静态资源的话,也要设置一下,这样就不会去解析静态资源了,访问静态资源的时候就直接访问即可。

以上是“java之SpringMVC对RESTfull支持的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


新闻标题:java之SpringMVC对RESTfull支持的示例分析
文章来源:http://pwwzsj.com/article/psipip.html