常见注解及使用说明

简介: 本文介绍了SpringMVC中@RequestMapping注解的作用与原理,讲解其如何将HTTP请求映射到控制器方法,实现前后端接口路径对应,并简述@GetMapping等派生注解的封装关系,帮助开发者理解接口定义机制。

在我们引入了SpringMVC框架之后,各位读者会发现,我们开始借助于注解的形式去定义接口请求路径,这些注解的作用就是:将任意HTTP 请求映射到控制器方法上

即:前端访问:www.baidu.com,实际对应后端一个被SpringMvc框架注解锁标注的方法上

那么这些注解有哪些,有各自发挥什么作用,在这里笔者带领大家快速了解一下:

@RequestMapping能做什么

在控制器类(就是我们的Controller类)上的方法上使用,用来表示前端请求的一个接口地址,比如我们访问任意一个网站,此时前端就会对后端发起一个Http请求

问题就在于:前端怎么知道请求后端哪个接口呢?接口有那么多?

此时我们的@RequestMapping注解就开始发挥作用了,我们定义的接口上:跟前端保持一样的接口请求路径,就可以实现对应接口的一对一访问。简而言之就是下面几个例子:

我们现在有一个员工操作接口,包括增删改查,一般我们会定义成下面的:

  • 新增:@RequestMapping("/staff/add")
  • 修改:@RequestMapping("/staff/update")
  • 删除:@RequestMapping("/staff/delete")
  • 查找:@RequestMapping("/staff/search")

这样我们就可以实现前后端接口的地址定位了。

但是除了这些我们可能还会有一些别的注解,其形式千变万化,但是要实现的效果是一致的。如@GetMapping、@PostMapping、@PutMapping、@DeleteMapping都是@RequestMapping注解基础之上的二次封装。

做个总结:@RequestMapping注解可以帮助后端程序员定义接口路径,从而让前端请求指定的接口。

@RequestMapping怎么做到的

这里有一定的原理性知识,各位视情况而定,可以自行跳过。

相关文章
|
安全 网络安全 数据安全/隐私保护
网络ACL
网络ACL 网络ACL(Access Control List)是一种网络安全机制,用于控制网络中数据流的进出和传递。它基于规则列表,定义了允许或拒绝通过网络设备(如路由器、防火墙)的数据流。 网络ACL通常用于限制或过滤特定类型的流量,以实现对网络资源和服务的保护和管理。它可以根据不同的条件对数据流进行过滤,如源IP地址、目标IP地址、源端口、目标端口、协议类型等。 下面是网络ACL的一些常见应用场景和功能: 1. 访问控制:网络ACL可以设置规则,限制特定IP地址或子网访问某些网络资源。例如,可以设置拒绝来自某个IP地址的所有入站流量,或者只允许特定子网的流量通过。
1234 0
|
7月前
|
Java 测试技术 数据库
Spring Boot中的项目属性配置
本文介绍Spring Boot中配置管理的常用方法:通过`@Value`读取单个配置,使用`@ConfigurationProperties`封装多个配置项,并实现开发与生产环境配置文件(如application-dev.yml和application-pro.yml)的灵活切换,提升项目可维护性。
|
7月前
|
缓存 JSON 前端开发
Spring Boot集成Thymeleaf模板引擎
Thymeleaf 是现代Java模板引擎,支持静态原型与动态数据融合,可直接浏览器预览,提升前后端协作效率,适用于Spring Boot项目,实现页面自然展示与高效开发。
Spring Boot集成Thymeleaf模板引擎
|
7月前
|
存储 Java API
Spring Boot使用slf4j进行日志记录
本文介绍了在Spring Boot项目中使用SLF4J结合Logback进行日志管理的方法。通过配置`application.yml`和`logback.xml`,实现日志级别、输出格式、文件存储与滚动策略的灵活控制,并推荐使用SLF4J门面模式替代直接调用具体日志实现,提升系统可维护性与扩展性。
|
7月前
|
JSON fastjson Java
Spring Boot 默认对Json的处理
本文详解Spring Boot中JSON处理,涵盖Jackson与FastJson的使用对比、null值处理及统一返回结构封装,提升接口数据规范性与可读性。
|
7月前
|
JSON Java Maven
SpringBoot使用汇总
Spring Boot 是基于 Spring 的轻量级框架,旨在简化配置、快速启动项目。它通过自动配置和约定优于配置的理念,整合第三方库,实现开箱即用,极大提升了开发效率,是当前 Java 微服务开发的主流选择。
|
7月前
|
项目管理 开发者
业务架构图
本文系统阐述了业务架构图的核心概念与绘制方法,涵盖业务定义、架构分层(组织层、应用层、能力层、基础层)、模块划分及功能分解,并结合医院场景示例,说明如何通过分层、分模块、分功能构建清晰的业务视图,提升客户理解与开发效率。
|
7月前
|
人工智能 监控 Java
请求限流
本文介绍如何使用Sentinel实现接口限流与降级,通过配置QPS阈值保护商品查询接口,并结合JMeter进行压测验证。同时讲解了线程隔离机制,包括信号量隔离的应用,确保系统在高并发下的稳定性。
请求限流
|
7月前
|
存储 缓存 负载均衡
Nacos注册中心
本文介绍Nacos的安装部署、服务注册与发现、权重控制、集群隔离及临时/持久实例等核心功能,涵盖从环境搭建到高级配置的完整实践,助力微服务架构高效管理。
 Nacos注册中心
|
7月前
|
监控 Java Sentinel
熔断降级
熔断降级是防止服务雪崩的核心机制,通过Sentinel实现。熔断由客户端断路器统计异常或慢请求比例,超阈值后拦截请求;降级则返回默认数据保障体验。结合使用可快速失败、避免级联故障。

热门文章

最新文章