Я использую Spring Data, Neo4j и Jackson для обслуживания JSON API. У меня есть простой класс пользователя, как это:
@NodeEntity
@JsonAutoDetect(JsonMethod.NONE)
public class User {
@GraphId Long internalId;
@Indexed String id;
public User() {}
public User(String id) {
this.id = id;
}
@JsonProperty
public String getId() {
return this.id;
}
}
Я использую @Indexed
для использования атрибута id
в URL. Есть ли возможность установить это поле как уникальное ? (как в РСУБД)
Теперь я могу создать много пользователей с одинаковым идентификатором:
Neo4jTemplate template;
...
template.save(new User("testid"));
template.save(new User("testid"));
Я бы хотел исключение для второго save
или, по крайней мере, я бы хотел заменить первого пользователя в БД.
Спасибо.