标签:EqualsAndHashCode java 生成 ToString 注解 Lombok 安装 属性
转自:
http://www.java265.com/JavaCourse/202204/2722.html
下文笔者讲述Lombok插件在IDEA中安装配置及使用方法简介说明,如下所示:
步骤1:Maven项目中引入Lombok
例: 找到相应的版本,在pom文件中放入相应的坐标即可
pom.xml 引入依赖 <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <!--Feb 07, 2020--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> <scope>provided</scope> </dependency>
步骤2:IDEA 安装插件及设置
1.安装Lombok插件 File/Settings/Plugins/Lombok/Install/OK 2.勾选 Enable annocation processing 点击 Apply save File/Settings/Build,Execution,Deployment/Compiler/Annocation Processors/√ Enable annocation processing
Lombok常用功能简介说明
@Getter/@Setter 注解在属性上,为相应的属性自动生成Getter/Setter方法。 boolean 类型属性生成 isName/setName 其他类型属性生成 getName/setName 可以通过 AccessLevel 设置访问级别(PUBLIC, PROTECTED, PACKAGE, PRIVATE); 如果该注解放在类上,则为所有的非静态属性自动生成Getter/Setter方法 @ToString 注解在类上,自动生成toString()方法,默认输出类名、用逗号分割的所有属性(按照属性定义顺序)。 可以通过 includeFieldNames 设置为 true 显示更详细的字段信息 默认打印非静态的所有字段; 可以在字段前使用 @ToString.Exclude 排除打印; 使用 @ToString(onlyExplicitlyIncluded = true),然后在字段前使用 @ToString.Include 加入打印 @EqualsAndHashCode 注解在类上,自动生成equals(Object other)和hashCode()方法。 默认使用非静态(non-static)和非瞬态(non-transient)的所有字段; 可以在字段前使用 @EqualsAndHashCode.Exclude 排除; 使用 @EqualsAndHashCode(onlyExplicitlyIncluded = true),然后在字段前使用 @EqualsAndHashCode.Include 加入 @NonNull 注解在方法或构造器的参数上,生成非空检查声明。等价于: if (param == null) throw new NullPointerException("param is marked @NonNull but is null"); @Data 注解在类上,等于 @ToString, @EqualsAndHashCode, @Getter/@Setter 和 @RequiredArgsConstructor, @NonNull 的集合 @Cleanup 注解在资源实例化语句上,通过 try/finally 自动调用 close() 方法回收资源 @NoArgsConstructor 注解在类上,自动生成没有参数的构造函数 @RequiredArgsConstructor 为所有带 @NonNull 注解和以 final 修饰的未经初始化的字段生成带参数的构造函数 @AllArgsConstructor 注解在类上,自动生成所有参数的构造函数
标签:EqualsAndHashCode,java,生成,ToString,注解,Lombok,安装,属性 来源: https://www.cnblogs.com/java265/p/16510555.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。