相当于 @Getter@Setter @RequiredArgsConstructor @ToString @EqualsAndHashCode @Value几个注解的集合
getter和setter注解生成对应的get和set方法
RequiredArgsConstructor注解:
(1)注解在类上,会生成构造方法(可能带参数也可能不带参数)。
注意:如果带参数,这参数只能是以 final 修饰的未经初始化的字段或者是以 @NonNull 注解的未经初始化的字段。
(2)该注解还可以用 @RequiredArgsConstructor(staticName="methodName") 的形式生成一个指定名称的静态方法,返回一个调用相应的构造方法产生的对象
ToString注解
https://blog.youkuaiyun.com/amoscn/article/details/86558018
EqualsAndHashCode
https://blog.youkuaiyun.com/c851204293/article/details/96989512
1. 此注解会生成equals(Object other) 和 hashCode()方法。
2. 它默认使用非静态,非瞬态的属性
3. 可通过参数exclude排除一些属性
4. 可通过参数of指定仅使用哪些属性
5. 它默认仅使用该类中定义的属性且不调用父类的方法
6. 可通过callSuper=true解决上一点问题。让其生成的方法中调用父类的方法。
这里最近是用在了Map key的地方,需要以对象的多个字段作为key值的时候,使用这些key作为新对象,然后作为map的key。以及对象去重,放入Set中,都会比较好用。不用手动组装生成唯一键。