美文网首页
Android上使用Lombok

Android上使用Lombok

作者: 放羊娃华振 | 来源:发表于2020-11-29 22:38 被阅读0次

一、Lombok是什么?

如果想自己完成从官网学习可以点击:https://projectlombok.org/。功能和AutoValue很类似。使用Lombok可以方便的生成setter、getter、equals、hashcode、toString等方法,代码看起来十分的优雅。

二、Android上如何集成

1.工程下面新建lombok.config文件。文件内容是:

lombok.anyConstructor.suppressConstructorProperties=true
image.png

2.在app的build.gradle中添加依赖:

dependencies {
    ```
    compileOnly "org.projectlombok:lombok:1.16.18"
    implementation 'org.glassfish:javax.annotation:10.0-b28'
}

3.在Android Studio中安装lombok插件


image.png

4.错误修复

javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } }
image.png

三、使用

通过上面的步骤,就已经在Android Studio中集成好了Lombok,接下来就是使用。可以有哪些关键字注解可以参考官方文档:https://projectlombok.org/features/all

val

Finally! Hassle-free final local variables.

var

Mutably! Hassle-free local variables.

@NonNull

or: How I learned to stop worrying and love the NullPointerException.

@Cleanup

Automatic resource management: Call your close() methods safely with no hassle.

@Getter/@Setter

Never write public int getFoo() {return foo;} again.

@ToString

No need to start a debugger to see your fields: Just let lombok generate a toString for you!

@EqualsAndHashCode

Equality made easy: Generates hashCode and equals implementations from the fields of your object..

@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor

Constructors made to order: Generates constructors that take no arguments, one argument per final / non-nullfield, or one argument for every field.

@Data

All together now: A shortcut for @ToString, @EqualsAndHashCode, @Getter on all fields, and @Setter on all non-final fields, and @RequiredArgsConstructor!

@Value

Immutable classes made very easy.

@Builder

... and Bob's your uncle: No-hassle fancy-pants APIs for object creation!

@SneakyThrows

To boldly throw checked exceptions where no one has thrown them before!

@Synchronized

synchronized done right: Don't expose your locks.

@With

Immutable 'setters' - methods that create a clone but with one changed field.

@Getter(lazy=true)

Laziness is a virtue!

@Log

Captain's Log, stardate 24435.7: "What was that line again?"

experimental

Head to the lab: The new stuff we're working on.

但是上面的很多注解不是我使用的初衷,例如@NonNull这种Android的support包里面都有。我想用的是@Data这种的。比如我写了一个实体类,我可以加个注解就生成了get/set/tostring/构造函数等。

package com.stormdzh.androidlombok.entity;
import lombok.Data;
/**
 * @Description: 测试实体类
 * @Author: dzh
 * @CreateDate: 2020-11-29 22:05
 */
@Data
public class User {
    private String name;
    private String avatar;

}

上面的代码加个@Data注解之后,就有有了以下的方法,这就很方便了。


image.png

四、总结

集成和简单使用已经总结了,其余的那些关键字可以看看官方的文档。有特殊的需求可以在研究下,官网上也有很多实例代码。

相关文章

  • Android上使用Lombok

    Android上使用Lombok [TOC] 简介 最近几天尝试了一把后端的工作,发现后端同学使用了一个第三库——...

  • Android上使用Lombok

    一、Lombok是什么? 如果想自己完成从官网学习可以点击:https://projectlombok.org/[...

  • lombok

    lombok的安装以及使用 什么是lombok 有什么好处 如何使用 IntelliJ IDEA 安装lombok...

  • 安装lombok

    使用lombok要先安装! 使用lombok要先安装! 使用lombok要先安装! 编译jar包后会自己找到相关的...

  • Android Studio使用Lombok插件

    之前做后端开发,经常使用Lombok,简洁的代码,没有比这更优雅了。 而在Android的开发中,还是依旧使用传统...

  • Lombok学习笔记

    Lombok学习笔记 1. 介绍 作用:简化代码编写,提高开发效率 使用lombok之前先要在IDE上安装lomb...

  • Android 安卓使用 Lombok

    最近偶然间接触到Lombok这款插件,他可以方便的通过注解来实现getter和setter.不用写一堆get se...

  • lombok 插件使用技巧

    lombok @EqualsAndHashCode 注解的影响 Java中优雅的使用Lombok

  • Android Studio3.x上使用Lombok(转)

    https://www.cnblogs.com/lkc9/p/10712285.html 1、添加gradle依赖...

  • Android上使用Lombok和set、get方法告别

    一、前言 在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等...

网友评论

      本文标题:Android上使用Lombok

      本文链接:https://www.haomeiwen.com/subject/jrxdbctx.html