记录Lombok注解 @SneakyThrows的用法

场景: 代码中有使用 @SneakyThrows 注解 在此记录

@Slf4j
@Service
public class OssServiceImpl implements OssService {

@Autowired
protected SysConfigService sysConfigService;
@Autowired
private FileUploadProperties fileUploadProperties;

@Override
@SneakyThrows
public UploadResponse upload(MultipartFile file) {

//代码省略

}
}
看源码分析:

它是lombok包下的注解 并且继承了Throwable

作用 是为了用try{}catch{}捕捉异常
添加之后会在 代码编译时 自动捕获异常

package lombok;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({ElementType.METHOD, ElementType.CONSTRUCTOR})
@Retention(RetentionPolicy.SOURCE)
public @interface SneakyThrows {
Class<? extends Throwable>[] value() default {Throwable.class};
}
posted @ 2022-02-17 11:42  雄狮_杜  阅读(704)  评论(0编辑  收藏  举报