SpringBoot系列(三)SpringBoot 之 MVC 支持

本系列博客将学习开发SpringBoot,快速开发项目


SpringBoot系列 (三):SpringBoot 之 MVC 支持

文档结构

  1. @RequestMapping 配置 url 映射
  2. @Controller 处理 http 请求
  3. @RestController 处理 ajax 请求
  4. @PathVariable 获取 url 参数
  5. @RequestParam 获取请求参数

一、 @RequestMapping 配置 url 映射

@RequestMapping("/hello")
public ModelAndView hello(){
ModelAndView mav=new ModelAndView();
mav.addObject("message","spring boot hello!");
mav.setViewName("helloWorld");
return mav;
}

二、@Controller 处理 http 请求

@Controller

三、@RestController 处理 ajax 请求

@RestController
//相当于
@Controller
@ResponseBody

我们在编写接口的时候,时常会有需求返回json数据,那么在spring boot应该怎么操作呢?主要是在class中加入注解@RestController。
1. 返回JSON之步骤:
2. 编写一个实体类Demo
3. 编写DemoController;
4. 在DemoController加上@RestController和@RequestMapping注解;
5. 测试

@RestController
@RequestMapping("/demo")
publicclass DemoController {

/**
 *返回demo数据:
 *请求地址:http://127.0.0.1:8080/demo/getDemo
 *@return
 */
@RequestMapping("/getDemo")
public Demo getDemo(){
   Demo demo = new Demo();
   demo.setId(1);
   demo.setName("Angel");
   return demo;
}

那么在浏览器访问地址:http://127.0.0.1:8080/demo/getDemo返回如下数据:

{
id: 1,
name: "Angel"
}

Spring Boot是引用了JSON解析包Jackson,那么我们就可以在Demo对象上使用Jackson提供的json属性的注解,对时间进行格式化,对一些字段进行忽略等等。

四、@PathVariable 获取 url 参数

@RequestMapping("/{id}")
public ModelAndView show(@PathVariable{"id"} Integer id){
   ModelAndView mav=new ModelAndView();
   mav.addObject("id",id);
   mav.setViewName("blog");
   return mav;
   }

五、@RequestParam 获取请求参数

请求地址: /Hello/blog/query?q=1234

@RequestMapping("/query")
public ModelAndView query(@RequestParam(Value="q",required=false)String q){
   ModelAndView mav=new ModelAndView();
   mav.addObject("q",q);
   mav.setViewName("query");
   return mav;
   }

你可能感兴趣的:(Spring,Boot,spring,spring-boo)