第四章 Spring MVC Rest风格的url、静态资源标签
程序员文章站
2022-04-07 21:17:41
...
一、Restful 风格的资源 URL 简介
REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。
目前在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。
二、SpringMvc 对 Rest 风格的支持
三、@PathVariable 获取 Url 变量
四、SpringMvc 对静态资源的处理
测试地址:http://localhost:8080/SpringMvc03/article/list
REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。
目前在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。
二、SpringMvc 对 Rest 风格的支持
package com.java1234.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import com.java1234.model.Article; /** * 声明controller控制器: * Controller * * 设置控制器访问路径: * RequestMapping("/article") * */ @Controller @RequestMapping("/article") public class ArticleController { /** * RequestMapping * 设置方法访问路径 * @param model * @return */ @RequestMapping("/list") public String list(Model model){ return "article/list"; } /** * restfull 风格的请求路径 * @param id * @return */ @RequestMapping("/details/{id}") public ModelAndView details(@PathVariable("id") int id){ ModelAndView mav=new ModelAndView(); if(id==1){ mav.addObject("article", new Article("文章一","文章一的内容")); }else if(id==2){ mav.addObject("article", new Article("文章二","文章二的内容")); } mav.setViewName("article/details"); return mav; } }
三、@PathVariable 获取 Url 变量
/** * restfull 风格的请求路径 * @param id * @return */ @RequestMapping("/details/{id}") public ModelAndView details(@PathVariable("id") int id){ ModelAndView mav=new ModelAndView(); if(id==1){ mav.addObject("article", new Article("文章一","文章一的内容")); }else if(id==2){ mav.addObject("article", new Article("文章二","文章二的内容")); } mav.setViewName("article/details"); return mav; }
四、SpringMvc 对静态资源的处理
<!-- 静态资源标签,配置可访问资源 --> <mvc:resources mapping="/resources/**" location="/images/"/>
测试地址:http://localhost:8080/SpringMvc03/article/list