新公司大家都用IDEA,最终舍弃Eclipse入乡随俗,失去了一些功能,也得到了一些功能,用了两个月终于习惯后感觉比Eclipse更好用?

偶然知道还有Lombok少写代码的这种Coding神器,使用其注解能够在我们编译源码的时候自动为我们生成很多Code。

依赖-LMLPHP

依赖

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.0</version>
    <scope>provided</scope>
</dependency>

好用的几个注解 

注解 作用
@ToString  自动生成ToString方法
@Getter@Setter  自动生成Getter和Setter方法
@Slf4j 自动生成一个使用Slf4j的log常量,无需再声明log,coding可直接log.info

官方介绍

注解 作用
@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.
@Getter(lazy=true) Laziness is a virtue!
@Log Captain's Log, stardate 24435.7: "What was that line again?"
03-23 02:54