• 基础篇-SpringBoot HTTP接口实战


    一、相关注解说明

    SpringBoot的Controller中经常会用到注解@Controller、@RestController、@RequestMapping、@RequestParam、@PathVariable、@RequestBody等。以下针对这些注解简单使用。

    1、@Controller

    用于定义控制器类,在spring项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层),一般这个注解在类中,通常方法需要配合注解@RequestMapping。

    @Controller
    @RequestMapping("/demo")
    public class HttpController {
        @RequestMapping(value = "/hello")
        public String sayHello() {
            System.out.println("hello world!");
            return "hello";
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2、@RestController

    用于定义控制器类,注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直接填入HTTP响应体中,是REST风格的控制器。

    @RestController
    @RequestMapping("/demo")
    public class RestHttpController {
        @RequestMapping(value = "/rest")
        public Object rest() {
            Map resultMap = new HashMap<>(8);
            resultMap.put("msg","i am rest controller test");
            resultMap.put("code","10000");
            return resultMap;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    请求返回:

    {"msg":"i am rest controller test","code":"10000"}
    
    • 1

    3、@RequestMapping

    作用于类或者方法上,用于映射URL路径,将http的请求地址映射到控制器(controller)类的处理方法上。

    参数说明:

    • value:定义处理方法的请求的 URL 地址。(重点)
    • method:定义处理方法的 http method 类型,如 GET、POST 等。(重点)
    • params:定义请求的 URL 中必须包含的参数。或者不包含某些参数。(了解)
    • headers:定义请求中 Request Headers 必须包含的参数。或者不包含某些参数。(了解)

    衍生注解:

    • GetMapping:等价于@RequestMapping(value = “hello”, method = RequestMethod.GET),接收Get请求方法的RequestMapping。
    • PostMapping:等价于@RequestMapping(value = “hello”, method = RequestMethod.POST),接收POST请求方法的RequestMapping。
    • DeleteMapping:等价于@RequestMapping(value = “hello”, method = RequestMethod.DELETE),接收DELETE请求方
  • 相关阅读:
    利用R语言进行生态环境数据的可视化分析:方法和实践
    Qt | QSplitter(分离器或分隔符)、QSplitterHandle 类(分界线)
    cs231n_2022的assignment-1实现(KNN部分)
    13 最大子数组和
    XML文件
    vuepress 打包后左侧菜单链接 404 问题解决办法
    这个项目,荣获“绽放杯”一等奖!
    【SQL】1633. 各赛事的用户注册率(COUNT函数 表达式用法)
    【Java】基于SSM的单位人事管理系统
    解决Python执行命令时路径空格引发的困扰
  • 原文地址:https://blog.csdn.net/Huangjiazhen711/article/details/126724096