Принудительно изменить «Ключ сущности» для объекта в хранилище данных

1

Как говорится в названии, я хочу насильственно изменить идентификатор Kind в хранилище данных, это возможно? Для автоматического создания идентификатора вид используется следующим образом:

@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName="datanucleus", key="gae.encoded-pk", value="true")
private String id;

Причина этого? Я случайно удалил некоторые элементы, которые я хочу восстановить, у меня есть их идентификаторы и все их свойства, но хотелось бы, чтобы идентификатор тоже был таким же.

Я пробовал просто создавать новые объекты и устанавливать ID: s, но это кажется невозможным. Я не получаю ошибки, но объект не будет сохранен.

Спасибо!

Теги:
google-app-engine
google-cloud-datastore
jdo

1 ответ

0
Лучший ответ

Кажется, что на самом деле это работает, чтобы вручную установить идентификатор объекта.

Причина, по которой она не срабатывала раньше, заключалась в том, что я попытался использовать пользовательский идентификатор (просто посмотреть, работает ли он), который не работает. Если вы используете тот же самый ID, который у вас был, прежде чем он будет работать, чтобы создать новый объект с этим идентификатором.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню