以下是Spring Boot中常用的注解及其详细解释以及相应的代码示例:
-
@SpringBootApplication
: 这个注解用于标识一个Spring Boot应用的主类。它整合了@Configuration
,@EnableAutoConfiguration
和@ComponentScan
。
@SpringBootApplication
publicclassDemoApplication{
publicstaticvoidmain(String[]args){
SpringApplication.run(DemoApplication.class,args);
}
}
-
@RestController
: 这个注解用于定义一个RESTful控制器,在Spring MVC中它表示所有的处理方法都返回一个Restful风格的数据。
@RestController
publicclassHelloController{
@GetMapping("/hello")
publicStringhello(){
return"Hello,World!";
}
}
-
@Service
: 这个注解用于标识一个类是业务逻辑层的组件。
@Service
publicclassUserService{
//Servicelogichere
}
-
@Repository
: 这个注解用于标识一个类是数据访问层的组件。
@Repository服务器托管网
publicclassUserRepository{
//Dataaccesslogichere
}
-
@Component
: 这个注解用于标识一个类是Spring的组件。
@Component
publicclassMyComponent{
//Componentlogichere
}
-
@Autowired
: 这个注解用于自动装配Spring Bean。
@Service
publicclassUserService{
@Autowired
privateUserRepositoryuserRepository;
//Servicelogichere
}
-
@Qualifier
: 当多个实现类满足一个接口时,可以与@Autowired
配合使用以指定具体要注入的Bean。
@Service
publicclassUserService{
@Autowired
@Qualifier("userDatabaseRepository")
privateUserRepositoryuserRepository;
//Servicelogichere
}
-
@RequestMapping
: 这个注解用于将HTTP请求映射到处理方法上。
@RestController
@RequestMapping("/api")
publicclassMyController{
@GetMapping("/hello")
publicStringhello(){
return"Hello,World!";
}
}
-
@GetMapping
,@PostMapping
,@PutMapping
,@DeleteMapping
: 这些注解用于将HTTP GET、POST、PUT、DELETE 请求映射到处理方法上。
@RestController
@RequestMapping("/api")
publicclassMyController{
@GetMapping("/get")
publicStringget(){
return"GETRequest";
}
@PostMapping("/post")
publicStringpost(){
return"POSTRequest";
}
@PutMapping("/put")
publicStringput(){
return"PUTRequest";
}
@DeleteMapping("/delete")
publicStringdelete(){
return"DELETERequest";
}
}
-
@RequestParam
: 这个注解用于从请求中获取参数的值。
@GetMapping("/user")
publicStringgetUserById(@RequestParamLongid){
//logictofetchuserbyid
}
-
@PathVariable
: 这个注解用于从请求的URL中获取参数的值。
@GetMapping("/user/{id}")
publicStringgetUserById(@PathVariableLongid){
//logictofetchuserbyid
}
-
@ResponseBody
: 这个注解用于将方法返回的对象转换为HTTP响应的主体部分。
@GetMapping("/user")
@ResponseBody
publicUsergetUser(){
//logictofetchuser
returnuser;
}
-
@RequestBody
: 这个注解用于将HTTP请求的主体部分转换为方法参数。
@PostMapping("/user")
publicStringaddUser(@RequestBodyUseruser){
//logictoadduser
}
-
@ResponseStatus
: 这个注解用于指定方法返回的HTTP状态码。
@ResponseStatus(HttpStatus.NOT_FOUND)
publicclassResourceNotFoundExceptionextendsRuntimeException{
//Exceptionhandlinglogichere
}
-
@ExceptionHandler
: 这个注解用于定义全局异常处理方法。
@ControllerAdvice
publicclassGlobalExceptionHandler{
@ExceptionHandler(Exception.class)
publicStringhandleException(Exceptionex){
//Exceptionhandlinglogichere
return"error";
}
}
-
@Configuration
: 这个注解用于定义配置类,通常与@Bean
注解一起使用。
@Configuration
publicclassAppConfig{
@Bean
publicUserServiceuserService(){
returnnewUserService();
}
}
-
@Value
: 这个注解用于从配置文件中获取值。
@Component
publicclassMyComponent{
@Value("${my.property}")
privateStringmyProperty;
//Componentlogichere
}
以上是一些常见的Spring Boot注解及其用法示例。在实际开发中,可能还会使用到其他的注解,具体根据项目需求和设计选择。
原文地址:Spring Boot 常用注解大全
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
什么是缓存 缓存(cache)是计算机中的一个经典的概念在很多场景中都会涉及到。 核心思路就是把一些常用的数据放到触手可及(访问速度更快)的地方,方便随时读取。 这里所说的“触手可及”是个相对的概念 我们知道,对于硬件的访问速度来说,通常情况下: CPU 寄存…