开发过程中遇到的注解
作用:1.生成equals(Object other)和hashCode()方法
2.默认使用非静态,费瞬态的属性
3.可以通过参数exclude排除一些属性
4.可以通过of参数指定使用哪些属性
5.默认仅使用该类中定义的属性且不调用父类方法(当callSuper==true时,生成的方法中会调用父类中的属性。callSuper默认是false)
6.主要配合@Data注解使用
如果@EqualsAndHashCode中callSuper != true,则自动生成的hashCode和equals方法只会根据本类中的非静态属性进行重写。此时如果两个此类对象继承的父类的属性值不同,而本身的属性值是相同的,则通过hashCode或者equals进行判断两个对象是否是同一个对象时,会返回true
2.@Resource注解是根据Bean的名称去匹配Bean,获取不到的话再根据类型区匹配;
而@Autowired注解则是根据类型匹配,通过名称则需要@Qualifier注解配合
3.@allowBeanDefinitionOverriding注解:spring中默认的是true,springboot中默认的是false。当设置为true时,如果在项目中发现有重复的Bean,则后发现的bean会覆盖之前相同名称的bean