Мне нужно настроить операции CRUD спящего режима для выполнения некоторых дополнительных операций. Моя проблема в том, что у меня нет доступа для изменения реализации сущностей, и мне нужно сохранять дополнительные метаданные для этих сущностей. Например:
@Entity
class Entity1 {
@Id
private Long id;
private String attr1;
}
@Entity
class Entity2 {
@Id
private Long id;
private String attr1;
private String attr2;
}
Entity1
и Entity2
сохраняются в своих собственных таблицах, это нормально, но мне нужно сохранить информацию метаданных, скажем, forced = [true|false]
, которая описывает, если заданный * Атрибут 1007 * был принудительным или нет. Эта информация будет применяться ко всей системе, это означает, что для всех сущностей с атрибутами String
должна быть возможность идентифицировать это, их атрибуты String были принудительно или нет.
В моем случае я могу определить, какие экземпляры и атрибуты были принудительно или нет во время выполнения, эта информация легко доступна в случае, если я должен реализовать какой-либо прослушиватель или перехватчик обратного вызова. Моя идея состоит в том, чтобы сохранить эту информацию метаданных в отдельной таблице, скажем, FORCED_ATTRIBUTES
, в которой есть три столбца (два для идентификации сущности и измененных атрибутов, а другой для определения, было ли изменено значение или нет).
Можно ли получить такую функциональность без изменения этих сущностей (Entity1
и Entity2
)?