八:Lombok 安装、入门 - 消除冗长的 java 代码

Lombok 安装、入门 - 消除冗长的 java 代码

前言:
    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下。
    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码。特别是相对于 POJO,光说不做不是我的风格,先来看看吧。

lombok 的官方网址:http://projectlombok.org/

lombok 其实到这里我就介绍完了,开个玩笑,其实官网上有 lombok 三分四十九秒的视频讲解,里面讲的也很清楚了,而且还有文档可以参考。
在这里我就不扯太多,先来看一下 lombok 的安装,其实这个官网视频上也有讲到啦

lombok 安装
    使用 lombok 是需要安装的,如果不安装,IDE 则无法解析 lombok 注解。先在官网下载最新版本的 JAR 包,现在是 0.11.2 版本,我用的是 0.11.0
    第一次使用的时候我下载的是最新版本的,也就是我现在用的 0.11.0,到现在已经更新了两个版本,更新的好快啊 ... ...

1. 双击下载下来的 JAR 包安装 lombok
    我选择这种方式安装的时候提示没有发现任何 IDE,所以我没安装成功,我是手动安装的。如果你想以这种方式安装,请参考官网的视频。

2.eclipse / myeclipse 手动安装 lombok
    1. 将 lombok.jar 复制到 myeclipse.ini / eclipse.ini 所在的文件夹目录下
    2. 打开 eclipse.ini / myeclipse.ini,在最后面插入以下两行并保存:
        -Xbootclasspath/a:lombok.jar
        -javaagent:lombok.jar
    3.重启 eclipse / myeclipse

lombok 注解:
    lombok 提供的注解不多,可以参考官方视频的讲解和官方文档。
    Lombok 注解在线帮助文档:http://projectlombok.org/features/index.    下面介绍几个我常用的 lombok 注解:
        @Data   :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
        @Setter:注解在属性上;为属性提供 setting 方法
        @Getter:注解在属性上;为属性提供 getting 方法
        @Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
        @NoArgsConstructor:注解在类上;为类提供一个无参的构造方法
        @AllArgsConstructor:注解在类上;为类提供一个全参的构造方法

@Getter / @Setter

  可以作用在类上和属性上,放在类上,会对所有的非静态(non-static)属性生成Getter/Setter方法,放在属性上,会对该属性生成Getter/Setter方法。并可以指定Getter/Setter方法的访问级别。

@EqualsAndHashCode

  默认情况下,会使用所有非瞬态(non-transient)和非静态(non-static)字段来生成equals和hascode方法,也可以指定具体使用哪些属性。

@ToString

  生成toString方法,默认情况下,会输出类名、所有属性,属性会按照顺序输出,以逗号分割。

@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor

  无参构造器、部分参数构造器、全参构造器,当我们需要重载多个构造器的时候,Lombok就无能为力了。

@Data

  @ToString, @EqualsAndHashCode, 所有属性的@Getter, 所有non-final属性的@Setter和@RequiredArgsConstructor的组合,通常情况下,我们使用这个注解就足够了。

下面是简单示例
    1.不使用 lombok 的方案

1
 2public class Person {
 3
 4    private String id;
 5    private String name;
 6    private String identity;
 7    private Logger log = Logger.getLogger(Person.class);
 8    
 9    public Person() {
10        
11    }
12    
13    public Person(String id, String name, String identity) {
14        this.id              = id;
15        this.name       = name;
16        this.identity  = identity;
17    }
18    
19    public String getId() {
20        return id;
21    }
22    
23    public String getName() {
24        return name;
25    }
26    
27    public String getIdentity() {
28        return identity;
29    }
30    
31    public void setId(String id) {
32        this.id = id;
33    }
34    
35    public void setName(String name) {
36        this.name = name;
37    }
38    
39    public void setIdentity(String identity) {
40        this.identity = identity;
41    }
42}
43

2.使用 lombok 的方案

1
 2@Data
 3@Log4j
 4@NoArgsConstructor
 5@AllArgsConstructor
 6public class Person {
 7
 8    private String id;
 9    private String name;
10  private String identity;
11    
12}
13

上面的两个 java 类,从作用上来看,它们的效果是一样的,相比较之下,很明显,使用 lombok 要简洁许多,特别是在类的属性较多的情况下,
同时也避免了修改字段名字时候忘记修改方法名所犯的低级错误。最后需要注意的是,在使用 lombok 注解的时候记得要导入 lombok.jar 包到工程

时间: 2024-07-30 17:42:05

八:Lombok 安装、入门 - 消除冗长的 java 代码的相关文章

Lombok 安装、入门 - 消除冗长的 java 代码

前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 POJO,光说不做不是我的风格,先来看看吧.lombok 的官方网址:http://projectlombok.org/  lombok 其实到这里我就介绍完了,开个玩笑,其实官网上有 lombok 三分四十九秒的视频讲解,里面讲的也很清楚了,而且还有文档可以参考.在这里我就不扯太多,先来看一下 l

Lombok 安装、入门 - 消除冗长的 java 代码(转)

原文出处:http://www.blogjava.net/fancydeepin/archive/2012/07/12/lombok.html 前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 POJO,光说不做不是我的风格,先来看看吧. lombok 的官方网址:http://projectlombok.org/ lombok 其实到这里我就介绍

Lombok 安装、入门 - 消除冗长的 java 代码(转)

前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 POJO,光说不做不是我的风格,先来看看吧. lombok 的官方网址:http://projectlombok.org/ lombok 其实到这里我就介绍完了,开个玩笑,其实官网上有 lombok 三分四十九秒的视频讲解,里面讲的也很清楚了,而且还有文档可以参考.在这里我就不扯太多,先来看一下 l

Lombok 下载,安装、入门 - 消除冗长的 java 代码

前言:     逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 POJO,光说不做不是我的风格,先来看看吧. lombok 的官方网址:http://projectlombok.org/ lombok 其实到这里我就介绍完了,开个玩笑,其实官网上有 lombok 三分四十九秒的视频讲解,里面讲的也很清楚了,而且还有文档可以参考.在这里我就不扯太多,先来看一下 

Lombok - 消除冗长的 java 代码

前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 POJO,光说不做不是我的风格,先来看看吧. lombok 的官方网址:http://projectlombok.org/ lombok 其实到这里我就介绍完了,开个玩笑,其实官网上有 lombok 三分四十九秒的视频讲解,里面讲的也很清楚了,而且还有文档可以参考.在这里我就不扯太多,先来看一下 l

使用 Lombok 简化项目中无谓的Java代码

在写使用Java时,难免会有一些模板代码要写,不然get/set,toString, hashCode, close 资源,定义构造函数等等.代码会显得很冗余,很长.Lombok项目可以是我们摆脱这些东西,通过一系列的注解,Lombok可以帮我们自动生成这些函数. Lombok 官网地址:https://projectlombok.org/ 参考文档:https://projectlombok.org/features/index.html 1. 安装 到官网下载 lombok.jar,直接双击

Eclipse - 安装Indent Guide,使JAVA代码具备编辑缩进线,和Delphi一样酷!!

Delphi里面默认就有代码编辑缩进线,这在编写逻辑复杂的大块代码时候非常有好处,可以清楚地看到每块代码的范围,下面就是Delphi里面代码编辑缩进线的截图: 非常棒的效果,我喜欢,在处理复杂逻辑代码时候,这个功能极其有用,这是我写的一个复杂方法的部分代码,还没看到全部呢,如果没有这种代码编辑缩进线,应该没有现在幸福!!! Eclipse默认没有这种功能,真期望它也能够具备这种功能,经过一番努力,终于做到了!! 我已经把IndentGuide插件处理完毕了,大家直接可以拿过来安装了! 处理好的插

简化你的Java代码,让工作更高效|语言

计算机专家在问题求解时非常重视表达式简洁性的价值.Unix的先驱者Ken Thompson曾经说过非常著名的一句话:"丢弃1000行代码的那一天是我最有成效的一天之一."这对于任何一个需要持续支持和维护的软件项目来说,都是一个当之无愧的目标.早期的Lisp贡献者Paul Graham甚至将语言的简洁性等同为语言的能力.这种对能力的认识让可以编写紧凑.简介的代码成为许多现代软件项目选择语言的首要标准. 任何程序都可以通过重构,去除多余的代码或无用的占位符,如空格,变得更加简短,不过某些语

Lombok快速入门

Lombok介绍: Lombok其实就是取名自龙目岛(Pulau Lombok),龙目岛是印度尼西亚西努沙登加拉(Nusa Tenggara Barat)省岛屿,西隔龙目海峡面对巴厘岛,东隔阿拉斯(Alas)海峡面松巴哇(Sumbawa)岛,北濒爪哇海,南临印度洋. 在编程上,Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法.简而言之,一句话就是:通过简单的注解来精简代码达到消除冗长代码的