zoukankan      html  css  js  c++  java
  • 常用注解

    Spring
    @Component:标注一个类为Spring容器的Bean(泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类)
    @Repository:用于将数据访问层 (DAO 层)的类标识为 Spring Bean
    @Services:用于标注业务层组件
    @RestController:是 @Controller 和 @ResponseBody 两个注解的结合体
     
    @RequestMapping:是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径
    @PostMapping:用于处理post请求
    @GetMapping:用于处理get请求
     
    @EnableAsync:开启异步调用
    @Async:基于@Async标注的方法,称之为异步方法;这些方法将在执行的时候,将会在独立的线程中被执行,调用者无需等待它的完成,即可继续其它的操作
    @Configuration:用于定义配置类,可替换XML配置文件,被注解的类内部包含一个或多个@Bean注解方法。可以被AnnotationConfigApplicationContext或者AnnotationConfigWebApplicationContext 进行扫描。用于构建bean定义以及初始化Spring容器
    @PostConstruct:在构造函数之后执行(只会被服务器执行一次)
    @Autowired:默认按照类型进行装配
    @Bean:用于告诉方法,产生一个Bean对象,并且交给Spring容器管理
    @Value:用于读取application.properties里的内容
    @Order:定义Spring IOC容器中Bean的执行顺序的优先级
    @ControllerAdvice:主要用于全局异常处理
    @ExceptionHandler:统一处理某一类异常,从而能够减少代码重复率和复杂度
    @WebFilter:用于将一个类声明为过滤器
    @EnableScheduling:用于开启对计划任务的支持
    @EnableAspectJAutoProxy:用于开启注解版的AOP功能
    @EnableCaching:可完成简单的缓存功能
    @EnableTransactionManagement:用于开启声明式事务
    @MapperScan:指定要变成实现类的接口所在的包,包下面的所有接口在编译之后都会生成相应的实现类
     
    Spring Boot
    @ConfigurationProperties:将配置文件的值映射到类上使用
    @SpringBootApplication:这个注解一般放在项目的启动类上,用来把启动类注入到容器中,用来定义容器扫描的范围和加载classpath环境中一些bean
     
    Spring Cloud
    @RefreshScope:实现配置文件的动态加载
    @EnableFeignClients:告诉框架扫描所有使用注解@FeignClient定义的feign客户端
    @FeignClient:定义一个feign客户端,将远程服务映射为一个本地Java方法调用
    -----------------------------------------------------------------------------------------------------------------------------
    @Resource:默认按照名称进行装配,名称可以通过name属性进行指定, 如果没有指定name属性,当注解写在字段上时,默认取字段名进行查找,如果注解写在setter方法上默认取属性名进行装配。 当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配
     
    @NotNull:被注释的元素不能为null,可以为空字符串
     
    @Target:指明了修饰的这个注解的使用范围,即被描述的注解可以用在哪里
    @Retention:指明修饰的注解的生存周期,即会保留到哪个阶段
    @Documented:指明修饰的注解,可以被例如 javadoc 此类的工具文档化,只负责标记,没有成员取值
     
    AOP
    @Aspect:声明切面
    @Pointcut:切入点
    @Around:用于对方法进行增强处理
     
    Lombok
    @Slf4j:如果不想每次都写private  final Logger logger = LoggerFactory.getLogger(当前类名.class); 可以用注解@Slf4j
    @Data:注解在类上,让lombok自动生成getter、setter、equals、hashCode、canEqual、toString方法
    @ToString:注解在类上,让lombok自动生成toString方法
    @Getter:注解在类上,让lombok自动生成getter方法
    @Setter:注解在类上,让lombok自动生成setter方法
    @EqualsAndHashCode:让lombok自动生成equals和hashCode方法
    @AllArgsConstructor:注解在类上, 为类提供全参构造函数
    @NoArgsConstructor:注解在类上, 为类提供无参构造函数
    @Accessor:用于配置getter和setter方法的生成结果
    @Builder:可以方便的支持 Builder 模式
     
    Swagger
    @ApiModel:这个注解是作用在类上面的,是用来描述类的一些基本信息
    @ApiModelProperty:这个注解是配合@ApiModel注解一起使用的。同时这个注解与@ApiModel不同,@ApiModel描述的是类的信息,而@ApiModelProperty描述的是类的属性的信息
  • 相关阅读:
    Map(关联式容器)
    List(双向链表)
    ubuntu新建、删除用户
    rbenv安装本地ruby安装包
    pycharm显示Unresolved reference
    rails 查看项目的所有路由
    rails 表单中默认值
    rails 辅助方法
    Ubuntu18.04网易云音乐双击运行
    apm飞行模式
  • 原文地址:https://www.cnblogs.com/beyondchina/p/14455240.html
Copyright © 2011-2022 走看看