我正在使用不可变对象与 MongoDB 进行交互。我在下面创建一个非常简单的示例:-
@Mongo.Repository
@Value.Immutable
@Gson.TypeAdapters
@JsonDeserialize(as = ImmutablePerson.class)
@JsonSerialize(as = ImmutablePerson.class)
public interface Person {
@Mongo.Id
@Value.Auxiliary
int id();
String name();
}
当我创建一个对象时
ImmutablePerson.builder().name("Amar").build();
我得到一个例外,如下所示: -
Cannot build Person, some of required attributes are not set [id]
at com.model.ImmutablePerson$Builder.build(ImmutablePerson.java:247) ~[classes/:na]
at com.Main.run(Main.java:56) [classes/:na]
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:732)
我也尝试了以下方法,但它也不起作用。
@Mongo.Repository
@Value.Immutable
@Gson.TypeAdapters
@JsonDeserialize(as = ImmutablePerson.class)
@JsonSerialize(as = ImmutablePerson.class)
public abstract class Person {
@Mongo.Id
@Value.Auxiliary
public abstract int id();
public abstract String name();
}
我在这里做错了什么?
谢谢,
阿马尔