springboot/springcloud的常用注解

springboot/springcloud的常用注解

@Data:注解在类上,其中包含了@Getter、@Setter、@ToString、@EqualsAndHashCode、@RequiredArgsConstructor等;

如果属性为final修饰的属性,则不会为该属性生成setter方法

@Getter:注解可以写在类上或具体的属性上,为类中所有属性或具体的属性提供 getter 方法;

@Setter:注解可以写在类上或具体的属性上,为类中所有非final修饰的属性或具体的非final修饰的属性提供 setter 方法
@ToString:注解写在类上,Lombok会生成一个toString()方法,默认情况下,会输出类名、所有属性(会按照属性定义顺序),用逗号来分割;

@EqualsAndHashCode:默认情况下,会使用所有非静态(non-static)和非瞬态(non-transient)属性来生成equals()和hasCode(),也能通过exclude注解来排除一些属性;

@NonNull:该注解用在属性或构造器上,Lombok会生成一个非空的声明,可用于校验参数,能帮助避免空指针;

@Slf4j :注解写在类上,根据用户实际使用的日志框架生成log日志对象;

@Log4j :注解写在类上;为类提供一个 属性名为log 的 log4j 日志对象

@Primary 的含义告诉Spring IoC容器,当发现有多个同样类型的Beam时,请优先使用被标注为了 @Primary

@Async 意思是可以异步执行,就是开启多线程的意思。所修饰的函数不要定义为static类型,这样异步调用不会生效

@EnableAsync注解的意思是可以异步执行,就是开启多线程的意思。可以标注在方法、类上。
为了让@Async注解能够生效,需要在Spring Boot的主程序中配置@EnableAsync

@GetMapping = @RequestMapping(method = RequestMethod.GET)的缩写
@PostMapping = @RequestMapping(method = RequestMethod.POST)的缩写
@PutMapping = @RequestMapping(method = RequestMethod.PUT) @PostMapping和@PutMapping作用等同,都是用来向服务器提交信息
@DeleteMapping = @RequestMapping(method = RequestMethod.DELETE)的简写,作用:对应删除,表明是一个删除URL映射
@PatchMapping

Spring Cloud的commons模块提供了一个@LoadBalanced注解,方便我们对RestTemplate添加一个LoadBalancerClient,以实现客户端负载均衡。
通过源码可以发现这是一个标记注解,我们可以通过ribbon实现客户端的负载均衡功能。
@Cleanup        关闭流
@Synchronized:对象同步
@SneakyThrows:抛出异常
@ConfigurationProperties(prefix = “upload”)    把同类的配置信息自动封装成实体类:可以使属性文件中的值和类中的属性对应起来;
使用方式有两种 :  1、在类上使用该注解   2、在工厂方法上使用该注解 (@bean)
注意:在springBoot中除了使用这个注解读取属性文件值外,还可以用@Value注解。

发布了67 篇原创文章 · 获赞 12 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/m0_37635053/article/details/103910279