@Data 注解引出的 lombok 小辣椒
来源:互联网 发布:保定seo 编辑:程序博客网 时间:2024/06/08 13:17
今天在看代码的时候, 看到了这个注解, 之前都没有见过, 所以就查了下, 发现还是个不错的注解, 可以让代码更加简洁.
这个注解来自于 lombok,lombok 能够减少大量的模板代码,减少了在使用@Data 注解时, 需要导入lombok.Data,下面列举下 lombok提供的注解:
val : 和 scala 中 val 同名, 可以在运行时确定类型;
@NonNull : 注解在参数上, 如果该类参数为 null , 就会报出异常, throw new NullPointException(参数名)
@Cleanup : 注释在引用变量前, 自动回收资源 默认调用 close() 方法
@Getter/@Setter : 注解在类上, 为类提供读写属性
@Getter(lazy=true) :
@ToString : 注解在类上, 为类提供 toString() 方法
@EqualsAndHashCode : 注解在类上, 为类提供 equals() 和 hashCode() 方法
@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor : 注解在类上, 为类提供无参,有指定必须参数, 全参构造函数
@Data : 注解在类上, 为类提供读写属性, 此外还提供了 equals()、hashCode()、toString() 方法
@Value :
@Builder : 注解在类上, 为类提供一个内部的 Builder
@SneakThrows :
@Synchronized : 注解在方法上, 为方法提供同步锁
@Log :
@Log4j : 注解在类上, 为类提供一个属性名为 log 的 log4j 的日志对象
@Slf4j : 注解在类上, 为类提供一个属性名为 log 的 log4j 的日志对象
@Cleanup("dispose") org.eclipse.swt.widgets.CoolBar bar = new CoolBar(parent, 0);
@Cleanup InputStream in = new FileInputStream(args[0]);
@Cleanup OutputStream out = new FileOutputStream(args[1]);
上面一些注解是由包含关系的, 看需要什么方法就增加什么注解,@Log4j 和 @Slf4j 注解作用不小, 用在各层都可以,方便打 log。
也可以查看官网 [ 官网 ]
简易例子:[ 只是用了@Data注解 ]
public @Data class Student { private String stuId; private String stuName; private String stuNum; private String stuSex; }
虽然说,eclipse 的快捷键生成这些代码会很快,但是知道总比不知道的好,万一别人用了,你看不懂别人的代码呢?那就不面子丢大了,还只是个实体类而已。
我觉得最重要的是,代码行数少了很多,简洁的代码谁不喜欢呢?
还有一点, 使用这个 lombok 需要安装 lombok 插件。
- @Data 注解引出的 lombok 小辣椒
- @Data 注解引出的 lombok 小辣椒
- @Data 注解引出的 lombok 注解
- lombok 注解的使用
- lombok的相关注解
- Java的lombok注解
- lombok的注解
- lombok @EqualsAndHashCode 注解的影响
- 好用的注解lombok
- lombok @EqualsAndHashCode 注解的影响
- lombok @EqualsAndHashCode 注解的影响
- 小辣椒使用笔记
- lombok 注解
- lombok 注解
- lombok注解
- quartus 小技巧—— 分线。例如总线data[31..0],引出的分线为data[7..0]。
- Lombok-很强大的POJO注解器
- 使用dozer注意一点,涉及lombok.Data的@Data
- 用R语言把数据玩出花样
- eclipse 将gitLab远程仓的项目导入eclipse中
- 人脸识别主要算法原理
- java_实现链表以及链表的测试类
- Android扫码功能,快速简单的集成
- @Data 注解引出的 lombok 小辣椒
- GCD博爱
- rabbitMQ和spring boot集成
- 去除标题栏和信息栏
- C++ 学习笔记
- 希尔排序
- 已经写了部分项目或者创建好了项目--------怎么弄到码云上面去?
- shell脚本基础知识一
- 利用druid的驱动包加密数据库密码