-
@Slf4j注解实现日志输出
-
@Service:一般用于修饰service层的组件
-
@RequiredArgsConstructor: 会生成一个包含常量,和标识了NotNull的变量的构造方法。生成的构造方法是私有的private。
-
autowired有4种模式,byName、byType、constructor、autodectect
其中@Autowired注解是使用byType方式的
byType方式是根据属性类型在容器中寻找bean类
-
@RequiredArgsConstructor(onConstructor = @_(@Autowired)):spring依赖注入,使用Lombok可以写出简洁的代码
-
@Data 标签,生成getter/setter toString()等方法
-
@NonNull : 让你不在担忧并且爱上NullPointerException
-
@CleanUp : 自动资源管理:不用再在finally中添加资源的close方法
-
@Setter/@Getter : 自动生成set和get方法
-
@ToString : 自动生成toString方法
-
@EqualsAndHashcode : 从对象的字段中生成hashCode和equals的实现
-
@NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor
-
自动生成构造方法
-
@Data : 自动生成set/get方法,toString方法,equals方法,hashCode方法,不带参数的构造方法
-
@Value : 用于注解final类
-
@Builder : 产生复杂的构建器api类
-
@SneakyThrows : 异常处理(谨慎使用)
-
@Synchronized : 同步方法安全的转化
-
@Getter(lazy=true) :
-
@Log : 支持各种logger对象,使用时用对应的注解,如:@Log4j
-
spring-data-mongodb
-
@Document :标识要持久化到MongoDB的域对象
-
可以使用注解@DBRef来设置对象的关联
-
-
jackSon注解 @JsonInclude @JsonIgnoreProperties @JsonProperty
1.JsonIgnoreProperties属性
示例用法:@JsonIgnoreProperties(ignoreUnknown = true)
该注解是放在类名上面,作用是:忽略类中不存在的字段当接收的时候2.JsonInclude属性
示例用法:@JsonInclude(JsonInclude.Include.NON_NULL)
该注解也是放在类名上面,作用是:忽略类中字段值为null的当接收的时候3.JsonProperty属性
示例用法:@JsonProperty(“element_type”)
该注解是放在字段上面,作用是:当返回前端时字段为element_type(注解里定义的属性) -
@JsonInclude(Include.NON_NULL)
前端的同事要求说尽量不要有null,可有为空串“” 或者 0 或者 [], 但尽量不要null。
所以@JsonInclude(Include.NON_NULL) 这个注解放在类头上就可以解决。 实体类与json互转的时候 属性值为null的不参与序列化
-
@JsonIgnore 注解是因为下面需要转换成json格式
-
把@Indexed注解在你想让MongoDB创建索引的属性上
-
此注解是为某个字段申请一个索引
-
@Indexed(value=IndexDirection.ASC, name="upc", unique=true, dropDups=true)
参数说明如下:
value: 表名这个索引的方向; IndexDirection.ASC(升序),IndexDirection.DESC(降序), IndexDirection.BOTH(两者)
默认为 升序;
name: 被创建的索引的 名称; mongodb默认创建的索引名的格式为(key1_1/-1_key2_1)
unique: 创建一个唯一索引,当创建唯一索引后,当在此字段插入相同的值时将会报错。true:为唯一索引;false:不是唯一索引。
默认为:false
dropDups:此参数表明,当为某个字段创建唯一索引时,删除其他相同值的记录。只保留第一条记录。true:删除重复,
false:不删除重复(当有重复值时唯一索引创建失败);默认为false.
-
-