Я пытаюсь создать документ со свойством @Id
, отличным от String
, все отлично работает. Моя проблема заключается в том, как документ хранится в Bucket, к сожалению, он имеет префикс с именем класса:
ActorKey(key=d7471027-4bd1-40a3-8e29-5249f45beed4)
{
"name": "Emma Watson",
"_class": "com.guilherme.miguel.domain.Actor"
}
Есть ли способ сохранить идентификатор, как если бы это был простой String
? Это делается для того, чтобы избежать проблем с простыми запросами (простые запросы заставят меня использовать ActorKey(key=xxxxxxxxxxxx))
Actor.java:
@Data
@AllArgsConstructor
@NoArgsConstructor
@Document
public class Actor {
@Id
private ActorKey key;
private String name;
}
ActorKey.java:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ActorKey implements Serializable {
private String key;
}
ActorRepository.java
@N1qlPrimaryIndexed
@ViewIndexed(designDoc = "actor")
public interface ActorRepository extends CouchbaseRepository<Actor, ActorKey> {
}