OneCoder Avatar
OneCodercoderli.com · 956 篇博文
{ } Java

Java 服务端架构

Spring、Netty、日志框架与工程化实战

🎨 视觉封面

点滴积累 Lombok 实用且有想法的jar

📅 2014-09-04·✍️ onecoder·计算中...·⏱️ 4 分钟
#Lombok

官网:http://projectlombok.org/

通过官网的视频,可以看到Lombok可以帮助我们节约很多机械而繁琐的代码。例如在写Pojo类或者Log的时候。写段代码体会一下:

Gradle依赖配置:

GROOVY
'org.projectlombok:lombok:1.14.4'

验证代码:

JAVA
package com.coderli.lombok;

import lombok.Data;
import lombok.extern.java.Log;

/**
* Lombok 工具jar 测试类
*
* @author OneCoder
* @date 2014年9月3日 下午10:48:12
* @website http://www.coderli.com
*/
@Log
@Data
public class LombokTest {
   
     private String name;
     private int count;
   
     public static void main(String[] args) {
          log.info("Print log with Lombok");
     }
}

可以看到,代码中没有声明log对象,我们却是可以直接使用。这就是Lombok的作用。在类生配置了@Log注解,类中就可以直接使用log对象。

当然,如果想在Eclipse不提示编译错误,首先自然是用把Lombok安装到eclipse中。双击下载好的jar即可安装。

同样@Data注解,就表明该类是一个model类。会自动给属性增加get/set 方法。节约代码。在Eclipse中按F4,查看该类的Type Hierarchy,可以看到每个属性get set方法已经存在。

OneCoder查了一下他的实现原理,应该利用AST,抽象语法树实现的。具体的我也不是很了解这方面的东西。有空研究一下。有两篇文章有比较详细的介绍:

https://www.ibm.com/developerworks/cn/java/j-lombok/
http://openjdk.java.net/groups/compiler/doc/compilation-overview/index.html

Lombok的更多功能,大家可以自己体会一下。确实是个很有想法的项目。佩服。

太晚了,休息了。晚安。

💡 OneCoder 资源指引

所有代码开源上传至 GitHub:yummy-code 仓库 · GESP 专题站:GESP WIKI

🤝 技术交流与答疑

欢迎加入:C++ GESP/CSP 考级答疑群(688906745)Java/Python交流群(982860385),点击可直接加群。

📚

猜你想读 · 相关文章推荐

Java 架构演进与实战 · 架构实践⏱️ 4 分钟

Lombok与Java9兼容性问题

很久没更新博客,本想写篇关于Java9 集合工厂函数的博客,却没想到阴差阳错先遇到Lombok与Java9的兼容性问题。 <!--break-- 我在一个试验用的工程里,想做一些关于Java9新特性的试验,该工程原本是依赖lombok的。结果,编译时,原有的使用@Slf4j注解的的类报编译错误。 Error:(18,...

阅读全文 →
Java 架构演进与实战 · 架构实践⏱️ 2 分钟

《Gradle user guide》翻译 — 第七章 Java快速开始

7.1 Java插件 <p 如我们所了解的,Gradle是一个通用的构建工具。它可以通过你的构建脚本实现几乎任何你想做的事情。不过,作为开箱即用的产品,它不会做任何构建脚本不包含的任务。</p 大多数的Java项目都跟基础情况很相似:你需要编译你的Java源文件,执行单元测试,并且创建一个包含你的类的JAR包。如果你不...

阅读全文 →
Java 架构演进与实战 · 架构实践⏱️ 4 分钟

《Gradle user guide》原创翻译 — 第六章 构建脚本基础

译者注:从第六章开始翻译,为了个人学习需要,先省略了前面已经了解和不太相关部分。见谅。<br / <br / 6.1 项目和任务<br / <br / Gradle里的一切都基于两个基本概念:项目和任务。(projects and tasks)。<br / <br / 每个Gradle构建都是由一个或多个项目组成的。项...

阅读全文 →
OneCoder

OneCoder (lihongzheshuai)

一个中年人的自留地,记录学习 C++、GESP/NOI、Java、Python 与算法架构的心得体会。本站唯一网址:coderli.com

💬 读者留言与交流

0 条讨论
✨ 支持 Markdown 语法格式
还没有留言,快来成为第一个讨论者吧!