当前位置: 首页 > news >正文

springboot中注解有什么用

注解(Annotation)是 Java 的一个重要特性,我用几个具体例子来解释:

1、标记功能

@Service  // 告诉Spring这是一个服务类
public class UserService {
}@Data     // 告诉Lombok自动生成getter/setter
public class User {private String name;
}

2、参数处理

@PostMapping("/login")          // 处理POST请求
public String login(@RequestBody LoginRequest req,     // 处理JSON请求体@RequestParam String type,          // 处理URL参数@PathVariable Long id) {           // 处理URL路径变量
}

3、配置功能

@Value("${server.port}")       // 注入配置文件的值
private int serverPort;@TableName("u_person")         // 指定数据库表名
public class Person {
}

4、验证功能

public class LoginRequest {@NotNull                   // 验证不能为空@Size(min = 3, max = 20)   // 验证长度范围private String username;
}

注解的主要作用:

  • 简化代码:避免写重复代码

  • 提供元数据:描述代码的额外信息

  • 声明式编程:通过注解声明要实现的功能

  • 运行时处理:框架可以根据注解执行特定操作

比如 @RequestBody 的工作流程:

  • 前端发送 JSON 数据

  • Spring 看到 @RequestBody 注解

  • 自动将 JSON 转换为 Java 对象

  • 把对象传给方法使用

这样就不用手动写 JSON 转换的代码了。

http://www.lryc.cn/news/547785.html

相关文章:

  • Spring Boot 缓存最佳实践:从基础到生产的完整指南
  • Linux网络相关内容与端口
  • Python Flask框架学习汇编
  • GitHub CI流水线
  • 机器视觉运动控制一体机在天地盖同步跟随贴合解决方案
  • 贪心算法一
  • 什么是全栈?
  • 后端-Java虚拟机
  • Android 低功率蓝牙之BluetoothGattCallback回调方法详解
  • K8S学习之基础十四:k8s中Deployment控制器概述
  • Vue3快速入门笔记
  • 【LeetCode104】二叉树的最大深度
  • SQLAlchemy系列教程:理解SQLAlchemy元数据
  • Apache Shiro 反序列化漏洞全解析(Shiro-550 Shiro-721)
  • 计算机毕业设计Python+DeepSeek-R1大模型空气质量预测分析(源码+文档+PPT+讲解)
  • 实例详细演示在Pytest中如何忽略警告
  • 03 HarmonyOS Next仪表盘案例详解(二):进阶篇
  • mysql进阶(三)
  • MySQL 架构、索引优化、DDL解析、死锁排查
  • AVM 环视拼接 鱼眼相机
  • 【Flink银行反欺诈系统设计方案】5.反欺诈系统全生命周期设计
  • aardio - 虚表 —— 两个虚表之间互相拖动交换数据
  • VScode 中文符号出现黄色方框的解决方法
  • LINUX网络基础 [二] - 网络编程套接字,UDP与TCP
  • Spring统一格式返回
  • Unity多Pass渲染与GPU Instancing深度优化指南
  • Redis高频面试题10个
  • 【数据库】MySQL常见聚合查询详解
  • 蓝桥备赛(11)- 数据结构、算法与STL
  • Linux的系统ip管理