lombok 的使用-(含同步锁)
lombok注解 可以看这个 https://blog.csdn.net/u011308294/article/details/78627560
开发中用来打log
@Slf4j
public class RequestUrlController {
@RequestMapping("bbb")
public void getRepones(){
log.info("123");
};
日志例子: (可以看到是哪个类打印出来的)
2021-11-04 16:35:11.073 INFO 81370 --- [nio-8080-exec-1] com.controle.RequestUrlController : 123
常用注解
@Data 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Setter :注解在属性上;为属性提供 setting 方法
@Setter :注解在属性上;为属性提供 getting 方法
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor :注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor :注解在类上;为类提供一个全参的构造方法
@Cleanup : 可以关闭流
@Builder : 被注解的类加个构造者模式
@Synchronized : 加个同步锁 https://www.cnblogs.com/huey/p/4693752.html
@SneakyThrows : 等同于try/catch 捕获异常
@NonNull : 如果给参数加个这个注解 参数为null会抛出空指针异常
@Value : 注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法。
————————————————
版权声明:本文为CSDN博主「奋进的小莫」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011308294/article/details/78627560
@Builder ---能更优雅的给实体类赋值
实体类
@Builder(toBuilder=true) -----加这个注解,赋值该实体类 就可使用链式写法
@Data
public class User {
@Builder.Default
String name="testHobbies"; -----------使用了@Builder注解,默认值要用@Builder.Default注解
@NonNull
String ii;
int age;
@Singular(value = "testHobbies") -----------数组加这个注解,赋值时,等于add往数组加字符
List list;
}
调用
public class main {
public static void main(String[] args) {
User user = User.builder()
.testHobbies("reading")
.testHobbies("chatting")
.ii("哈哈")
.build();
System.out.println(user);
}
}