美文网首页
Lombok 学习笔记

Lombok 学习笔记

作者: 皮多堡 | 来源:发表于2017-12-20 15:11 被阅读0次

    Java 冗长的代码是可能是Java语言自身最大的不足了,而Lombok正是为了弥补这一不足而流行的工具,Lombok可以通过简单的注解形式来帮助我们最大程度的简化我们的Java代码,它可以根据不同的注解,在编译源码的时候生成对应的代码。
    官网网址 github地址

    1.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:注解在类上;为类提供一个全参的构造方法
    • @Cleanup: 自动帮我们调用close()方法。
      比如:
      @Cleanup InputStream in = new FileInputStream(args[0]);
      @Cleanup OutputStream out = new FileOutputStream(args[1]);
    

    2.安装

    这里我讲下IDEA安装lombok插件:

    Ctrl+shift+S 进入设置页面

    点击plugin -> Browse repositories 搜索框中输入 lombok


    安装完成后重启即可

    3. 使用

    引入依赖:

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

    新建User类:

    package com.hp.up.lombok;
    
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    import lombok.extern.log4j.Log4j;
    
    /**
     * Created by youBatis on 2017/12/20 14:09
     */
    @Data
    @Log4j
    @NoArgsConstructor
    @AllArgsConstructor
    public class User {
    
    /**
     * id
     */
    private Long id;
    
    /**
     * 用户名
     */
    private String name;
    
    /**
     * 性别 1:男 2:女 99:未知
     */
    private Integer sex;
    
    /**
     * 密码
     */
    private String password;
    
    /**
     * 盐
     */
    private String salt;
    
    /**
     * 头像
     */
    private String avatar;
    
    /**
     * 邮箱
     */
    private String email;
    
    }
    

    完成之后我们可以看到User类的结构,其中已经有Lombok帮我们生成的代码了:


    测试类:

    public class TestLombok {
    public static void main(String[] args) {
        User user = new User();
        user.setId(123L);
        user.setName("youBatis");
        System.out.println(user.toString());
    }
    }
    

    控制台输出 :

    User(id=123, name=youBatis, sex=null, password=null, salt=null, avatar=null)            
    

    如图:


    更多用法参考 官网资料

    相关文章

      网友评论

          本文标题:Lombok 学习笔记

          本文链接:https://www.haomeiwen.com/subject/hopgwxtx.html