• SpringBoot集成Lombok


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

    Project Lombok是一个Java库,可以自动插入到您的编辑器中并进行构建的工具,为您的Java增添便利。
    你再也不用写一个个的 getter、setter 或 equals 等方法了,只需要一个注释,你的类就有了一个功能齐全的生成器、自动化你的日志记录变量等等。

    SpringBoot集成Lombok

    1. 配置

    首先配置IntelliJ IDEA
    image.png
    image.png

    然后在配置Maven

    <dependency>
    	<groupId>org.projectlombokgroupId>
    	<artifactId>lombokartifactId>
    	<version>1.18.24version>
    	<scope>providedscope>
    dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    image.png

    2. 使用

    import lombok.Data;
    import org.junit.jupiter.api.Assertions;
    import org.junit.jupiter.api.Test;
    
    /**
     * Lombok测试
     *
     * @author Jack魏
     * @since 2022-08-21
     */
    @Data
    class LombokTest {
        private String name;
        private Integer age;
    
        @Test
        void testGetter() {
            LombokTest test = new LombokTest();
            Integer age = test.getAge();
            Assertions.assertNull(age, " expected: null ");
        }
    
        @Test
        void testSetter() {
            LombokTest test = new LombokTest();
            test.setAge(18);
            Integer age = test.getAge();
            Assertions.assertNotNull(age, " expected: not null ");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30

    可以看到没有getter、setter也是可以使用的。
    image.png

    3. 常用注解

    注解作用
    @NonNull如果对象是null抛出空指针异常
    @Cleanup自动清理资源
    @Setter自动生成setter方法
    @Getter自动生成getter方法
    @ToString自动生成toString方法
    @EqualsAndHashCode自动生成equals方法和hashCode方法
    @RequiredArgsConstructor生成final字段的构造器,并判断是否不能为空的值
    @AllArgsConstructor生成所有字段的构造器,并判断是否不能为空的值
    @NoArgsConstructor生成一个空的构造器
    @Data@Getter,@Setter,@ToString,@EqualsAndHashCode和@RequiredArgsConstructor
    @Valuefinal @ToString @EqualsAndHashCode @AllArgsConstructor @FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE) @Getter 不可修改
  • 相关阅读:
    接口性能优化
    数据库审核工具SQLE部署及使用
    Set接口和常用方法
    360关键词指数查询易语言代码
    VBS脚本、BAT批处理脚本大公开,功能强大,简单易用 —— 定时执行专家
    【Seata】深入解读分布式事务解决方案
    从内存优化视角再看 Glide 图片加载库
    opencv
    00_Linux
    pytorch中的Dataloader和dataset详细的collate_fn参数测试
  • 原文地址:https://blog.csdn.net/WeiHao0240/article/details/126448500