【发布时间】:2021-09-19 04:58:20
【问题描述】:
抱歉英语不好。
我目前使用 dto 进行请求正文映射,
Spring 无法知道输入为空或未收到,因为这两种情况都只是空。
例如,像这样。
// dto
public class UpdateDto {
private String name;
private Integer price;
}
// entity
public class Product {
@Id
@GeneratedValue
private Long id;
@Column(nullable = true)
private String name;
@Column(nullable = true)
private Integer price;
}
我用空字符串解决了字符串的情况。当收到空字符串时,将此字段更新为空。因为大多数情况下的空字符串都可以视为 null。
// update name
if (updateDto.getName() != null) {
if (updateDto.getName() == "") {
// set name to null
} else {
// just update to getName() value
}
}
// update price
// when i set to null?
但是整数情况,我不知道如何解决这个问题。 有什么好主意吗?
【问题讨论】:
标签: java spring spring-boot rest