1、Lombok简介
- @Data:自动生成Getter/Setter、toString、equals、hashCode方法,以及不带参数的构造方法;
- @NonNull:帮助处理NullPointerException;
- @CleanUp:自动管理资源,不用在finally中添加资源的close方法;
- @Setter/@Getter:自动生成Getter/Setter方法;
- @ToString:自动生成toString方法;
- @EqualsAndHashcode:从对象字段中重写hashCode和equals方法;
- @NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor:自动生成构造方法;
- @Value:用于注解final类;
- @Builder:用于注解复杂的构造器API类;
- @SneakThrows:用于处理异常;
- @Synchronized:同步方法的转化;
- @Log:支持使用各种日志(logger)对象。只需要在使用是,用对应的注解进行标注,比如,使用Log4j作为日志库,则在需要加入日志的位置协商注解@Log4j即可。
2、spring-boot常用注解
注解 | 使用位置 | 说明 |
---|---|---|
@RestController | 类名上 | 作用相当于@ResponseBody加@Controller |
@Controller | 类名上 | 声明此类是一个SpringMVC Controller对象 |
@Service | 类名上 | 声明是一个业务处理类(实现非接口类) |
@Repository | 类名上 | 声明数据库访问类(实现非接口类) |
@Component | 类名上 | 代表其实Spring管理类,常用在无法用@Service、@Repository描述的Spring管理类上,相当于通用的注解 |
@Configuration | 类名上 | 声明此类是一个配置类,常与@Bean配合使用 |
@Autowired | 类名上、属性火构造函数参数上 | 默认按byType自动注入 |
@Resource | 类名上 | 默认按byName自动注入 |
@RequestMapping | 类名或方法上 | 如果用在类上,则表示所有响应请求的方法都是该地址作为父路径的 |
@Transactional | 类名或方法上 | 用于处理事务 |
@Qialifier | 类名或属性上 | 为Bean指定名称,随后在通过名字引用Bean |