`
朱秋旭
  • 浏览: 231030 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Lombok 之 @Getter(lazy=true)

阅读更多

LomBok 的相关目录已经整理出来,希望大家可以根据需求自助学习,好工具要大家分享:

@Cleanup     

@Getter, @Setter

@ToString

@EqualsAndHashCode

@Constructor

@Data & @Value

@SneakyThrows

@Synchronized

@Getter(lazy=true)

@Log

 

最后终于到了一个高级点的annotation的用法了,使用lazy版的getter  annotation, 会提高代码效率,同时由Lombok帮助你管理线程安全问题,大可放心。先看一段代码:

import lombok.Getter;

public class GetterLazyExample {
  @Getter(lazy=true) private final double[] cached = expensive();
  
  private double[] expensive() {
    double[] result = new double[1000000];
    for (int i = 0; i < result.length; i++) {
      result[i] = Math.asin(i);
    }
    return result;
  }
}

 

使用了getter这个annotation可以在实际使用到cached的时候生成cached,同时,Lombok会自动去管理线程安全的问题,不会存在重复赋值的问题。

可以把这篇博客作为之前一篇@Getter的一个附属特性。Getter还真是蛮好用的。

 

1
0
分享到:
评论

相关推荐

    jmockdata拓展 1.支持LocalDateTime等, 2.支持lombok的@Accessors(chain = true)

    1.2.支持lombok的@Accessors(chain = true) 2.1.首先这是3.1.0 目前的最新版 不支持java8 所以我拓展了一部分 如果有需要请留言继续拓展 之后发email发您 2.2然后支持lombok的@Accessors(chain = true) 如果未...

    java中lombok的@Data引发问题详解

    另一种选择是放弃使用`@Data`,而是单独使用`@Getter`、`@Setter`、`@ToString`和`@EqualsAndHashCode(callSuper = true)`,这样可以更好地控制每个注解的行为。 总结来说,使用Lombok的`@Data`注解时需要注意`@...

    通过Lombok来简化你的代码1

    13. @Getter(lazy=true):可以替代经典的Double Check Lock样板代码。 14. @Log:根据不同的注解生成不同类型的log对象,但是实例名称都是log,有六种可选实现类:@CommonsLog、@Log、@Log4j、@Log4j2、@Slf4j、@...

    mybatis逆向工程集合lombok最终版

    修改过源码的mybatis-generator代码生成器,去除mapper.xml里面的冗余字段,去除domain实体类中的冗余getset方法,改用lombok的@getter@setter@toString标签, ,内附安装破解教程, 小白可用, 一套清爽的改编版逆向工程...

    使用@Data注解get和set方法爆红的原因是没安装lombok的插件啊.docx

    试一试

    lombok.jar

    `@Data` 是Lombok提供的一个复合注解,它包含了`@ToString`、`@EqualsAndHashCode`、`@Getter`和`@Setter`,可以自动为类的所有非静态、非瞬态字段生成getter和setter方法,并且提供默认的toString()和equals()、...

    lombok.jar在eclipse和sts中做相应配置可以代替get、set

    - `@Getter`: 自动生成getter方法。 - `@Setter`: 自动生成setter方法。 - `@EqualsAndHashCode`: 自动生成`equals`和`hashCode`方法。 - `@ToString`: 自动生成`toString`方法。 - `@NoArgsConstructor`: 自动生成...

    详解Idea 2019.2 安装lombok插件失效问题解决

    包含了@ToString,@EqualsAndHashCode,@Getter / @Setter和@RequiredArgsConstructor的功能,提供类所有属性的 getter 和 setter 方法,此外还提供了equals、canEqual、hashCode、toString 方法。 @Setter:注解在...

    IDEA中 Getter、Setter 注解不起作用的问题如何解决

    然而,有时在使用Lombok库进行开发时,可能会遇到IDEA中的Getter和Setter注解不起作用的问题。Lombok是一个能帮助开发者消除Java类中大量重复的getter和setter方法的库,通过注解的方式简化代码。当IDEA无法识别这些...

    lombok 插件idea 下载

    安装Lombok插件后,开发者在IDEA中编写Java类时,可以直接使用Lombok提供的注解,例如`@Data`、`@Getter`、`@Setter`等。`@Data`是一个组合注解,包含了`@ToString`、`@EqualsAndHashCode`、`@Getter`(对所有字段)...

    lombok.jar;lombok.jar

    3. **@Getter** 和 **@Setter**:它们分别用于单独为字段生成getter和setter方法。可以指定访问级别,例如`@Getter(AccessLevel.PROTECTED)`。 4. **@NonNull**:此注解用于标记字段,表示该字段不允许为null。在...

    Lombok使用讲解及原理1

    `@Getter(lazy=true)` 实现了懒加载,通常用于 Double Check Lock 模式,避免不必要的初始化。`@Log` 系列注解则自动创建日志对象,支持多种日志实现,如 Commons Log, JDK Logging, Log4j 等。 总的来说,Lombok ...

    lombok-1.18.12.zip

    3. `@Getter` 和 `@Setter`:分别用于生成 getter 和 setter 方法,可以指定访问级别,如 `@Getter(AccessLevel.PRIVATE)`。 4. `@NoArgsConstructor` 和 `@AllArgsConstructor`:生成无参构造函数和全参构造函数,...

    Lombok(Java库)

    @Getter / @Setter:自动生成字段的 getter 和 setter 方法。 @ToString:自动生成 toString 方法,方便输出对象的字符串表示。 @EqualsAndHashCode:自动生成 equals 和 hashCode 方法,用于对象的比较和哈希处理...

    实体类带注释、支持lombok的mybatis-generator-core-1.3.7.jar

    mybatis-generator-core-1.3.7.jar 带注释,支持lombok,如 @Data public class Person { /** * 自增ID */ private Long id; }

    spring boot3+jpa+lombok+mapstruct实现的restful api例子

    在本项目中,Lombok的注解(如`@Data`, `@AllArgsConstructor`, `@NoArgsConstructor`, `@Getter`, `@Setter`等)用于减少实体类中的样板代码,提高代码可读性和简洁性。 4. **MapStruct**: MapStruct是一个代码...

    lombok_lombok.zip

    2. `@Getter` 和 `@Setter`:这两个注解分别用于生成 getter 和 setter 方法,可以作用于类级别或字段级别。例如,`@Getter(AccessLevel.PROTECTED)` 可以设置 getter 的访问级别为 protected。 3. `@...

    lombok2.zip

    它提供了一系列的注解,如 `@Data`、`@Getter`、`@Setter`、`@AllArgsConstructor`、`@NoArgsConstructor` 和 `@ToString`,这些注解可以在编译时自动生成对应的方法,使得代码更加简洁且易于维护。 1. **@Data** ...

    lombok插件

    Lombok插件是Java开发者常用的工具之一,它极大地提高了开发效率,尤其是在处理大量getter、setter、构造函数和其他常规样板代码时。Lombok通过提供注解的方式,允许开发者在源代码中消除这些冗余的代码,使代码更加...

    lombok 插件,用于android studio,实现代码自动生成

    Lombok提供了一系列的注解,如`@Data`、`@Setter`、`@Getter`、`@NoArgsConstructor`、`@AllArgsConstructor`等,这些注解能够自动生成对应的JavaBeans方法,避免手动编写这些样板代码。例如,`@Data`注解可以自动...

Global site tag (gtag.js) - Google Analytics