前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >lombok系列1:初识lombok

lombok系列1:初识lombok

作者头像
pollyduan
发布2019-11-04 13:32:41
3380
发布2019-11-04 13:32:41
举报

官网:https://projectlombok.org/

什么是lombok

连官网都懒得废话,只给出了一句广告词:给你的java加点料(spice up your java)。

我们自己来总结一下:

lombok是一个ide插件,它可以让我们写更少的代码,而编译出更多的字节码。

也就是说,我们可以让我们编译出一个复杂的.class文件,而我们的.java文件很干净清爽。

为什么要使用lombok

首先,我们可以写更少的代码,而不影响其他类引用,方法一个不能少;

其次,lombok是编译周期参与的,运行时完全无依赖,对字节码而言无侵入;

代码review更简单,一目了然。

lombok适用场景

尤其适合pojo类,如普通的javabean、orm的实体类、json的实体类等。

有些功能如Log相关,适用于任意类。

spring Cloud已经引入为一个core组件,可以放心使用。

hello lombok

首先,我们按照传统的方式编写一个java bean,增加getter、setter、toString:

代码语言:javascript
复制
package com.pollyduan;

import java.util.Date;

public class User {
	private Integer id;
	private String userName;
	private String password;
	private String email;
	private Integer age;
	private Date signupTime;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public Integer getAge() {
		return age;
	}

	public void setAge(Integer age) {
		this.age = age;
	}

	public Date getSignupTime() {
		return signupTime;
	}

	public void setSignupTime(Date signupTime) {
		this.signupTime = signupTime;
	}

	@Override
	public String toString() {
		return "User [id=" + id + ", userName=" + userName + ", password=" + password + ", email=" + email + ", age="
				+ age + ", signupTime=" + signupTime + "]";
	}
}

然后写一个Main方法测试一下:

代码语言:javascript
复制
public static void main(String[] args) {
   User user=new User();
   user.setId(1001);
   user.setUserName("pollyduan");
   user.setPassword("123456");
   user.setEmail("pollyduan@pollyduan.com");
   user.setAge(30);
   user.setSignupTime(new Date());
   System.out.println(user);
}

我们用lombok改造一下,重点看一下main方法,使用起来完全一样。

代码语言:javascript
复制
package com.pollyduan;

import java.util.Date;

import lombok.Data;

@Data
public class User {
	private Integer id;
	private String userName;
	private String password;
	private String email;
	private Integer age;
	private Date signupTime;
}

没错,就是这么干净。

其他类使用该Bean的方法与前面完全一样。

如何安装插件

看了helloworld是不是有了用一下的冲动?如果使用该插件需要在ide安装插件,这里只针对eclipse开发环境进行说明,其他ide可以搜索一下,或者联系我。

下载插件

首先你要拿到一个lombok.jar,有几个途径:

代码语言:javascript
复制
1. 直接在官网下载;
2. 去maven仓库下载,比如:http://mvnrepository.com/
3. 直接在你的maven项目中拉取jar,然后去~/.m2中去找。

maven依赖配置:

代码语言:javascript
复制
<dependency>
  <groupId>org.projectlombok</groupId>
  <artifactId>lombok</artifactId>
  <version>1.16.16</version>
</dependency>

注:该jar第一次安装完之后,以后编码时也需要引入到java build path中。

安装lombok

直接执行lombok.jar,如:

代码语言:javascript
复制
java -jar ~/.m2/repository/org/projectlombok/lombok/1.16.16/lombok-1.16.16.jar

会弹出一个窗口,选择你的eclipse目录,或者自己导航到eclipse.ini文件,点击"Install"即可。

使用lombok

插件安装后,重启eclipse,将lombok.jar添加到java build path中就可以了。

如果你使用maven,很好,将lombok添加到依赖中即可。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是lombok
  • 为什么要使用lombok
  • lombok适用场景
  • hello lombok
  • 如何安装插件
    • 下载插件
      • 安装lombok
        • 使用lombok
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档