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

Spring Boot 常用注解大全

以下是Spring Boot中常用的注解及其详细解释以及相应的代码示例:

  1. @SpringBootApplication: 这个注解用于标识一个Spring Boot应用的主类。它整合了 @Configuration@EnableAutoConfiguration@ComponentScan

@SpringBootApplication
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}
}
  1. @RestController: 这个注解用于定义一个RESTful控制器,在Spring MVC中它表示所有的处理方法都返回一个Restful风格的数据。

@RestController
public class HelloController {@GetMapping("/hello")public String hello() {return "Hello, World!";}
}
  1. @Service: 这个注解用于标识一个类是业务逻辑层的组件。

@Service
public class UserService {// Service logic here
}
  1. @Repository: 这个注解用于标识一个类是数据访问层的组件。

@Repository
public class UserRepository {// Data access logic here
}
  1. @Component: 这个注解用于标识一个类是Spring的组件。

@Component
public class MyComponent {// Component logic here
}
  1. @Autowired: 这个注解用于自动装配Spring Bean。

@Service
public class UserService {@Autowiredprivate UserRepository userRepository;// Service logic here
}
  1. @Qualifier: 当多个实现类满足一个接口时,可以与 @Autowired 配合使用以指定具体要注入的Bean。

@Service
public class UserService {@Autowired@Qualifier("userDatabaseRepository")private UserRepository userRepository;// Service logic here
}
  1. @RequestMapping: 这个注解用于将HTTP请求映射到处理方法上。

@RestController
@RequestMapping("/api")
public class MyController {@GetMapping("/hello")public String hello() {return "Hello, World!";}
}
  1. @GetMapping, @PostMapping, @PutMapping, @DeleteMapping: 这些注解用于将HTTP GET、POST、PUT、DELETE 请求映射到处理方法上。

@RestController
@RequestMapping("/api")
public class MyController {@GetMapping("/get")public String get() {return "GET Request";}@PostMapping("/post")public String post() {return "POST Request";}@PutMapping("/put")public String put() {return "PUT Request";}@DeleteMapping("/delete")public String delete() {return "DELETE Request";}
}
  1. @RequestParam: 这个注解用于从请求中获取参数的值。

@GetMapping("/user")
public String getUserById(@RequestParam Long id) {// logic to fetch user by id
}
  1. @PathVariable: 这个注解用于从请求的URL中获取参数的值。

@GetMapping("/user/{id}")
public String getUserById(@PathVariable Long id) {// logic to fetch user by id
}
  1. @ResponseBody: 这个注解用于将方法返回的对象转换为HTTP响应的主体部分。

@GetMapping("/user")
@ResponseBody
public User getUser() {// logic to fetch userreturn user;
}
  1. @RequestBody: 这个注解用于将HTTP请求的主体部分转换为方法参数。

@PostMapping("/user")
public String addUser(@RequestBody User user) {// logic to add user
}
  1. @ResponseStatus: 这个注解用于指定方法返回的HTTP状态码。

@ResponseStatus(HttpStatus.NOT_FOUND)
public class ResourceNotFoundException extends RuntimeException {// Exception handling logic here
}
  1. @ExceptionHandler: 这个注解用于定义全局异常处理方法。

@ControllerAdvice
public class GlobalExceptionHandler {@ExceptionHandler(Exception.class)public String handleException(Exception ex) {// Exception handling logic herereturn "error";}
}
  1. @Configuration: 这个注解用于定义配置类,通常与 @Bean 注解一起使用。

@Configuration
public class AppConfig {@Beanpublic UserService userService() {return new UserService();}
}
  1. @Value: 这个注解用于从配置文件中获取值。

@Component
public class MyComponent {@Value("${my.property}")private String myProperty;// Component logic here
}

以上是一些常见的Spring Boot注解及其用法示例。在实际开发中,可能还会使用到其他的注解,具体根据项目需求和设计选择。

原文地址:Spring Boot 常用注解大全

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

相关文章:

  • (MATLAB)第十二章-数列与极限
  • OJ输入问题+准备
  • 软考高级:主动攻击和被动攻击概念和例题
  • cuda python torch 虚拟环境配置
  • 激光炸弹 刷题笔记
  • Vue3学习记录(三)--- 组合式API之生命周期和模板引用
  • Batch Normalization和Layer Normalization和Group normalization
  • 命名实体识别NER(综合代码示例)
  • 关于jQuery日历插件:daterangepicker
  • 【贪心算法】最大子序和
  • 爬虫逆向网站案例
  • 蓝桥杯复习之前缀和
  • 动态规划(算法竞赛、蓝桥杯)--背包DP求具体方案
  • go写mysql取得自增字段值
  • Vue 3的Composition API和vue2的不同之处
  • go语言基础 -- 面向对象编程
  • HarmonyOS—编译构建概述
  • 下载element-ui 资源,图标 element-icons.woff,element-icons.ttf 无法解码文件字体
  • Flutter整体框架
  • JVM堆内存中新生代晋升到老年代的条件
  • 前端监控为什么采用GIF图片做埋点?
  • webstorm 创建运行纯Typescript项目
  • GO-接口
  • 【C语言】动态内存管理常用函数
  • 【OpenGL】(1) 专栏介绍:OpenGL 库 | 3D 计算机图形应用 | GPGPU 计算 | 3D 建模和 3D动画 | 渲染技术介绍
  • SPI总线知识总结
  • 【异常关闭clas*h,导致无法访问任何网页_解决办法】
  • STL-map和set
  • [蓝桥杯 2020 省 B1] 整除序列
  • 【Android】View 的滑动