SpringBoot - [00] 注解大全
@SpringBootApplication
这个注解用于标识一个SpringBoot应用的主类。它整合了@Configuration,@EnableAutoConfiguration,@ComponentScan。
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
@RestController
这个注解用于定义一个RESTful控制器,在SpringMVC中它表示所有的处理方法都返回一个Restful风格的数据。
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello, World!";
}
}
@Service
这个注解用于标识一个类是业务逻辑层的组件。
@Service
public class UserService {
// Service logic here
}
@Repository
这个注解用于标识一个类是数据访问层的组件。
@Repository
public class UserRepository {
// Data access logic here
}
@Component
这个注解用于标识一个类是Spring的组件。
@Component
public class MyComponent {
// Component logic here
}
@Autowired
这个注解用于自动装配Spring Bean
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
// Service logic here
}
@Qualifier
当多个实现类满足一个接口时,可以与 @Autowired 配合使用以指定具体要注入的Bean。
@Service
public class UserService {
@Autowired
@Qualifier("userDatabaseRepository")
private UserRepository userRepository;
// Service logic here
}
@RequestMapping
这个注解用于将HTTP请求映射到处理方法上。
@RestController
@RequestMapping("/api")
public class MyController {
@GetMapping("/hello")
public String hello() {
return "Hello, World!";
}
}
@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";
}
}
@RequestParam
这个注解用于从请求中获取参数的值。
@GetMapping("/user")
public String getUserById(@RequestParam Long id) {
// logic to fetch user by id
}
@PathVariable
这个注解用于从请求的URL中获取参数的值。
@GetMapping("/user/{id}")
public String getUserById(@PathVariable Long id) {
// logic to fetch user by id
}
@ResponseBody
这个注解用于将方法返回的对象转换为HTTP响应的主体部分。
@GetMapping("/user")
@ResponseBody
public User getUser() {
// logic to fetch user
return user;
}
@RequestBody
这个注解用于将HTTP请求的主体部分转换为方法参数
@PostMapping("/user")
public String addUser(@RequestBody User user) {
// logic to add user
}
@ResponseStatus
这个注解用于指定方法返回的HTTP状态码。
@ResponseStatus(HttpStatus.NOT_FOUND)
public class ResourceNotFoundException extends RuntimeException {
// Exception handling logic here
}
@ExceptionHandler
这个注解用于定义全局异常处理方法。
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public String handleException(Exception ex) {
// Exception handling logic here
return "error";
}
}
@Configuration
这个注解用于定义配置类,通常与 @Bean 注解一起使用。
@Configuration
public class AppConfig {
@Bean
public UserService userService() {
return new UserService();
}
}
@Value
这个注解用于从配置文件中获取值
@Component
public class MyComponent {
@Value("${my.property}")
private String myProperty;
// Component logic here
}
@EnableAutoConfiguration
自动配置
@ComponentScan:自动扫描启动类同级包,该注解标注在启动类上方
— 要养成终生学习的习惯 —
SpringBoot - [00] 注解大全的更多相关文章
- SpringBoot常用注解大全
常用注解概览 这里整理了一张SpringBoot常用注解的思维导图,本文主要讲解这些注解的用法. 组件相关注解 @ComponentScan 默认扫描当前包及其子包下面被@component,@Con ...
- Springboot 相关注解大全
1.Spring注解 1.@Autowired 标注在方法,Spring容器创建当前对象,就会调用方法,完成赋值:方法使用的参数,自定义类型的值从ioc容器中获取自动装配; Spring利用依赖注入( ...
- springBoot系列-->springBoot注解大全
一.注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan.@Configuration和@EnableAutoConfiguration ...
- SpringBoot注解大全(转)
原文链接:[springBoot系列]--springBoot注解大全 一.注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan.@Co ...
- SpringBoot进阶教程(六十四)注解大全
在Spring1.x时代,还没出现注解,需要大量xml配置文件并在内部编写大量bean标签.Java5推出新特性annotation,为spring的更新奠定了基础.从Spring 2.X开始spri ...
- Spring SpringMVC SpringBoot SpringCloud 注解整理大全
Spring SpringMVC SpringBoot SpringCloud 注解整理 才开的博客所以放了一篇以前整理的文档,如果有需要添加修改的地方欢迎指正,我会修改的φ(๑˃∀˂๑)♪ Spri ...
- Spring注解大全,汇总版
Spring使用的注解大全和解释 注解 解释 @Controller 组合注解(组合了@Component注解),应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类 ...
- Spring 注解大全与详解
Spring使用的注解大全和解释 注解 解释 @Controller 组合注解(组合了@Component注解),应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类 ...
- [转]Spring 注解大全与详解
Spring使用的注解大全和解释 注解 解释 @Controller 组合注解(组合了@Component注解),应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类 ...
- SpringBoot 常用注解(持续更新)
SpringBoot 常用注解 @SpringBootApplication @Bean @ComponentScan @ControllerAdvice @ExceptionHandler @Res ...
随机推荐
- 【MyBatis】学习笔记12:通过级联属性赋值解决多对一的映射关系
[Mybatis]学习笔记01:连接数据库,实现增删改 [Mybatis]学习笔记02:实现简单的查 [MyBatis]学习笔记03:配置文件进一步解读(非常重要) [MyBatis]学习笔记04:配 ...
- 实现一个分布式调用(OkHttp+SpringBoot)
很多情况,trace是分布在不同的应用中的,最常用的远程调用方式就是Http. 在这种情况下,我们通常通过增加额外的Http Header传递Trace信息,然后将其组织起来. 本部分通过构建一个目前 ...
- python量化指标计算talib函数功能一览表
安装talib库:pip install talib 1 # 取个数据验证一下 2 set_token('') 3 data = history(symbol = 'SHSE.600519',freq ...
- Qt音视频开发42-人脸识别客户端
一.前言 人脸识别客户端程序,不需要和人脸识别相关的库在一起,而是通过协议通信来和人脸识别服务端通信交互,人脸识别客户端和服务端程序框架,主要是为了提供一套通用的框架,按照定好的协议,实现人脸识别的相 ...
- Qt音视频开发24-ffmpeg音视频同步
一.前言 用ffmpeg来做音视频同步,个人认为这个是ffmpeg基础处理中最难的一个,无数人就卡在这里,怎么也不准,本人也是尝试过网上各种demo,基本上都是渣渣,要么仅仅支持极其少量的视频文件比如 ...
- [转]Ceres求解优化问题
1. 简介Ceres Solver是专门用于求解非线性最小二乘问题的C++开源库,研究SLAM方向不过滤波和优化两个技术路线,因此常用Ceres库解决实际项目中的优化问题,当然还有g2o同样可用,但就 ...
- [转]ptp(precision time protocol)时钟同步
一.介绍1:什么是ptpPTP(Precision Time Protocol) 是一个通过网络同步时钟的一个协议.当硬件支持时,PTP 精度能达到亚微秒,比 NTP(Network Time Pro ...
- 饿了么组件中el-menu el-submenu el-menu-item三者之间的关系
饿了么组件中el-menu el-submenu el-menu-item三者之间的关系: 1.<el-menu>是菜单标签,里面可以包括:<el-submenu>和&l ...
- 即时通讯技术文集(第41期):直播技术合集(Part1) [共12篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第41 期. [- 1 -] 移动端实时音视频直播技术详解(一):开篇 [链接] http:// ...
- 【狂神说Java】Java零基础学习笔记-预科
[狂神说Java]Java零基础学习笔记-预科 预科01:学习准备:博客 博客,英文名为Blog,它的正式名称为网络日记 为什么要写博客? 需要总结和思考.有时候我们一直在赶路,却忘了放慢脚步 提升文 ...