您的位置:1010cc时时彩经典版 > 1010cc时时彩经典版 > lombok介绍及使用方法,Boot中使用小插件Lombok

lombok介绍及使用方法,Boot中使用小插件Lombok

发布时间:2019-11-17 21:45编辑:1010cc时时彩经典版浏览(64)

    对于IJ这个IDE工具来说,我们会安装一些插件来帮助我们更好的进行开发,像lombok就是一款不错的插件,使用注解的方式在项目编译时帮助我们生成代码,像getter,setter,tostring等等,它们一般都是一些重复的代码,而lombok就是帮助我们生成这些重复代码的,对于一个IJ的工具来说,如果你不启动编译时注解功能,那么项目在build时会报错!

    前言:

    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下。

    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码。特别是对于 POJO,光说不做不是我的风格,先来看看吧。

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

    lombok注解在线帮助文档:http://projectlombok.org/features/index.

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

    前言

    之前写了一下后台代码,发现后台项目中使用了一个很好用的插件——Lombok。它帮助程序员避免写一些setter、getter、toString等机械化的代码,减少了程序员的机械劳动。既然是Java项目,那么在Android中应该也是能用的,于是在Android项目中也尝试了一下。

    前言

    阅读开源项目的时候发现作者用了@data注解,在没有安装lombok之前ide提示找不到对应的get、set方法,查阅资料后发现作者是使用了lombok插件。

    文章转载自:1010cc时时彩经典版,https://blog.52itstyle.com/archives/1418/

    开启build时的注释

     "Settings > Build > Compiler > Annotation Processors"

    1010cc时时彩经典版 1

    然后再安装lombok插件

    1010cc时时彩经典版 2

    在项目里配置关于lombok的依赖项

    compileOnly('org.projectlombok:lombok:1.16.20')
    

    最后就可以在代码中使用lombok的注解了

    /**
     * 用户实体
     *
    * @Data :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
    * @Setter:注解在属性上;为属性提供 setting 方法
    * @etter:注解在属性上;为属性提供 getting 方法
    * @og4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
    * @oArgsConstructor:注解在类上;为类提供一个无参的构造方法
    * @llArgsConstructor:注解在类上;为类提供一个全参的构造方法
    */
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public class UserInfo {
        @Id
        private String id;
        @NotNull
        private String name;
        private String email;
    }
    

    好了,启用插件注解就说到这里,感谢阅读!

     

    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:注解在类上;为类提供一个全参的构造方法

    下面是简单示例

    1.不使用 lombok 的方案

    public class Person {
    
        private String id;
        private String name;
        private String identity;
        private Logger log = Logger.getLogger(Person.class);
    
        public Person() {     
        }
    
        public Person(String id, String name, String identity) {
            this.id = id;
            this.name = name;
            this.identity = identity;
        }
    
        public String getId() {
            return id;
        }
    
        public String getName() {
            return name;
        }
    
        public String getIdentity() {
            return identity;
        }
    
        public void setId(String id) {
            this.id = id;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public void setIdentity(String identity) {
            this.identity = identity;
        }
    }
    

    2.使用 lombok 的方案:

    @Data 
    @Log4j
    @NoArgsConstructor 
    @AllArgsConstructor 
    public class Person { 
        private String id; 
        private String name; 
        private String identity; 
    } 
    

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

    由于我在测试类中使用log变量,竟然是飘红的,但是真正编译运行又不会报错,对于强迫症的我显然需要找到解决的方案。因此下面专门讲讲基于IDEA SpringBoot lombok的使用方案。

    依赖

    如下是Gradle文件配置。因为Lombok的原理是根据注解生成代码,所以需要用到apt。
    在Project的build.gradle文件中添加对apt的依赖

    buildscript {
        repositories {
            jcenter()
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:2.1.2'
            //添加apt依赖
            classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        }
    }
    

    在app的build.gradle文件中修改

    //应用apt插件
    apply plugin: 'com.neenbedankt.android-apt'
    ...
    
    dependencies {
            compile 'org.projectlombok:lombok:1.16.8'  //添加lombok依赖
            ...
    }
    

    介绍

    Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。
    lombok 的官方网址:http://projectlombok.org/


    最近在做一个小功能,又不想在原有体态臃肿的项目中追加,为了调试方便并且可以快速开发就采用了springboot。由于使用了JPA,建了几个类,然后通过IDE去生成其属性的构造器、getter、setter、equals、hashcode、toString方法,那么Java中有没有一种方式能够避免这种重复的劳动呢?答案是有,想着前几天听说有一款简化神奇Lombok,特此拿来玩玩记录一下。

    目标

    使用Lombok提高开发效率。

    代码

    lombok使用Annotation来申明某个类需要添加getter,setter等,下面是使用lombok和不使用lombok的对比。

    @Setter
    @Getter
    @ToString
    public class XXX implements Entity {
    
        String id;
    
    }
    
    public class XXX implements Entity {
    
        String id;
    
        public String getId(){
            return this.id;
        }
    
        public void setId(String id){
            this.id = id;
        }
    }
    

    可以看到我们不再需要手工去写Getter和Setter了。

    lombok的安装

    在IDEA下 file->settings-Plugins搜索lombok安装插件

    1010cc时时彩经典版 3

    安装lombok插件

    并在项目中添加lombok依赖

         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <version>1.16.14</version>
         </dependency>
    

    一、简介

    Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。

    官方地址:https://projectlombok.org/

    github地址:https://github.com/rzwitserloot/lombok

    本文由1010cc时时彩经典版发布于1010cc时时彩经典版,转载请注明出处:lombok介绍及使用方法,Boot中使用小插件Lombok

    关键词:

上一篇:接口调用

下一篇:没有了