SpringBoot系列(三)SpringBoot 之 MVC 支持

本文介绍如何使用SpringBoot实现MVC架构,包括配置URL映射、处理HTTP请求、返回JSON数据等核心功能,并演示了获取URL参数及请求参数的方法。

本系列博客将学习开发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;
   }
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值