Это будет иметь побочный эффект (возможно, полезный), не позволяющий обычному Java-коду создавать объект, поскольку существует только конструктор по умолчанию без мутаторов. Для нормального построения вам понадобятся еще 2 аннотации:
способ создания класса является предпочтительным?
НеизменныйМожет быть сериализовано / десериализовано с ДжексономЧеловекочитаемый и с низким уровнем шаблонаЖелательно, чтобы мне понравилось что-то подобное:
@Data(onConstructor = @__(@JsonCreator))
а затем все поля должны бытьprivate final
, Однако, это даже не компилируется (и я не уверен почему). С помощью
@AllArgsConstructor(onConstructor = @__(@JsonCreator))
скомпилирует но только даст
InvalidDefinitionException: No serializer found for class