java中的lombok
当出现新的Java工具时,总是有理由感到高兴,而我今天正在探索的工具特别有趣。
Lombok是一个开放源代码库,旨在减少Java类中的样板代码,并帮助您摆脱所有的getter和setter方法,哈希码和equals方法。
您问这是如何实现的? 嗯,只需用简单明了的注释替换许多重复的代码即可完成。
让我们仔细看看Lombok所提供的服务。
您可以处理的所有注释
Lombok当前版本中的功能包括以下注释:
@Getter和@Setter –可以在领域或班级使用。 如果在类级别使用,它将为该类中的所有字段生成getter和setter。
@AllArgsConstructor –生成一个公共构造函数,并将按照定义它们的顺序构造在类中声明的所有字段。
@NoArgsConstructor –生成不带参数的构造函数。 您应该注意,如果由于存在final
字段而无法生成构造函数,则会出现错误消息。
@RequiredArgsConstructor –生成包含类中所有final
字段的构造函数。 请注意, @NoArgsConstructor
和@RequiredArgsConstructor
不能一起使用,如果尝试使用,则会抛出编译时错误。
@EqualsAndHashCode –可以在类级别使用,它将为equals(Object other)
和hashCode()
方法生成实现。 默认情况下,它将使用所有非静态和非瞬态字段。 如果某些字段不希望包含在equals
或hashCode
方法中,则可以使用@EqualsAndHashCode.Exclude.
排除那些特定的字段@EqualsAndHashCode.Exclude.
@ToString –可用于生成toString()
实现。 默认情况下,将打印所有非静态字段。 您可以通过组合使用@ToString.Exclude
, @ToString.Include
和@ToString(onlyExplicitlyIncluded = true).
来指定包含或跳过某些字段@ToString(onlyExplicitlyIncluded = true).
@Value – @Data的不可变变体,正好用于此目的。 默认情况下,所有字段均设为final,并且不创建setter。
@Builder – Builder模式是一种创新的设计模式,用于帮助逐步构建对象。 @Builder
使您可以自动生成所需的代码。
日志记录- @Log
Log使用java.util.logging.Logger.getLogger(LogExample.class.getName())
对象创建一个日志变量。 Lombok也支持其他日志记录框架,可以由@Log4j
, @Slf4j
等注释使用。您可以在此处找到受支持框架的完整列表。
还请参见:
入门
您有几种选择来开始使用Lombok。 进一步来说:
Eclipse –从官方网站下载Lombok .jar
文件,然后运行下载的lombok.jar
文件或在终端中执行命令。
NetBeans – 下载 Lombok .jar
并将其添加到项目库中。 只需选择Project Properties -> Build - Compiling -> Enable Annotation Processing in Editor
即可激活插件。
IntelliJ –转到File -> Settings -> Plugins
然后选择Browse Repositories.
搜索Lombok Plugin
,然后单击Install Plugin
。 然后,只需重新启动IDE,即可开始使用。
要了解有关如何在其他IDE上安装Lombok的更多信息,请转到官方网站并查看“安装”部分。
翻译自: https://jaxenter.com/reduce-boilerplate-code-java-lombok-152782.html
java中的lombok