Mongojack можно сохранить идентификатор в виде строки
Можно ли сохранить поле идентификатора типа String в POJO как String в коллекции монго?
Я пытался аннотировать POJO, как описано в официальной документации, но свойство коллекции _id всегда сохраняется как ObjectId.
Вот мой очень простой POJO
public class Sticker
{
@Id
@JsonProperty("_id")
private String id;
private String name;
public String getId()
{
return id;
}
public void setId( String id )
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName( String name)
{
this.name= name;
}
}
1 ответ
Это зависит от того, установлен ли идентификатор перед сохранением экземпляра в базе данных или нет.
Если вы установите произвольную строку, это будет строка в базе данных. Если вы не установите его, это будет ObjectId в базе данных, потому что Mongo DB создает идентификатор для вас.