首页 > 其他分享 >SpringBoot - [00] 注解大全

SpringBoot - [00] 注解大全

时间:2024-03-16 12:01:49浏览次数:19  
标签:00 SpringBoot class String user logic 注解 public 大全

 

 

@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 注解一起使用。

 

 

 

 

 

 

 

 

 

 

— 要养成终生学习的习惯 —

标签:00,SpringBoot,class,String,user,logic,注解,public,大全
From: https://www.cnblogs.com/houhuilinblogs/p/18076892

相关文章

  • 酷睿Ultra 9 185h和i5-13500H选哪个好?参数性能区别对比
    i513500h采用10纳米制作工艺最高睿频4.7GHz十二核心十六线程三级缓存18MB热设计功耗(TDP)45W支持最大内存64GB内存类型DDR43200MHzDDR55200MHz集成显卡IntelIrisXeGraphics选Ultra9185h还是i5-13500H这些点很重要看过你就懂了http://www.adiannao.c......
  • 酷睿i9 14900hx参数 i914900hx核显什么水平
    i914900hx采用Intel7制程工艺,有24核心,其中8个高性能核心,16个高效能核心,共32线程,P核心最大睿频5.8GHz,全核最大睿频5.2GHz;E核心最大睿频/全核心最大睿频4.1GHz,L2缓存32MB、L3缓存36MB,TDP55W,最大可配置功耗为157W,内存支持DDR55600MHz。i914900hx怎么样这些点很重要 http:/......
  • 实验一 邵铭修 202383310026
    task1}点击查看代码#include<stdio.h>intmain(){ printf("o\n"); printf("<H>\n"); printf("II\n"); printf("o\n"); printf("<H>\n"); printf("II\n"); return0;![](ht......
  • springboot/java/php/node/python农产品销售系统小程序【计算机毕设】
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:随着互联网技术的迅猛发展,传统农产品销售模式正逐步向线上转移。小程序作为移动互联网的一种轻量级应用,因其开发成本低、传播快、使用方便等特点,成为连接......
  • Codeforces-1005C
    https://codeforces.com/problemset/problem/1005/C一、代码目录#include<bits/stdc++.h>usingnamespacestd;voidsolve(){inta[122222],n,ans=0;map<int,int>m;scanf("%d",&n);for(inti=0;i<n;i++){......
  • Springboot
    SpringBootSpringBoot集成PageHelper加入依赖<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.6</version></dependency>写代码/......
  • springboot仓库管理系统(附:源码+课件)
    项目介绍:管理员system123456客户表(ID客户名称邮编客户地址客户电话联系人联系人电话开户行账号邮箱)供应商表(ID供应商名称邮编供应商地址供应商电话联系人联系人电话开户行账号邮箱)商品表(ID商品名称供应商产地商品规格商品包装生产批号批准文号商......
  • SpringBoot鲜花商城管理系统Java
    一 设计背景1.1课题现状1.2课题意义二 开发环境及技术架构22.1开发环境与工具2.2技术架构三 需求分析3.1系统目标3.2功能需求3.3性能要求四 系统设计4.1系统功能总体设计4.2系统详细设计4.2.1用户登录4.2.2用户注册4.2.3管理员登......
  • springboot235基于SpringBoot的房屋交易平台的设计与实现
          本科毕业设计论文题目:房屋交易平台设计与实现系   别:XX系(全称)专    业:软件工程班   级:软件工程15201学生姓名:学生学号:指导教师:导师1       导师2摘  要信息数据从传统到当代,是一直在变革当中,突如其......
  • springboot233大学生就业需求分析系统
          本科毕业设计论文题目:大学生就业需求分析系统设计与实现系   别:XX系(全称)专    业:软件工程班   级:软件工程15201学生姓名:学生学号:指导教师:导师1       导师2摘  要信息数据从传统到当代,是一直在变革......