Как получить предыдущий объект состояния объекта в методе onFlushDirty() метода EmptyInterceptor? Я могу иметь текущий сеанс и текущий объект объекта, но получение предыдущего состояния для этого объекта сущности не подходит. Пожалуйста, помогитеПредыдущий объект состояния onFlushDirty()
-1
A
ответ
0
Вы можете получить доступ к предыдущим значениям объекта с помощью параметров Object[] previousState and String[] propertyNames
.
@Override
public boolean onFlushDirty(Object entity, Serializable id, Object[] currentState,
Object[] previousState, String[] propertyNames, Type[] types) {
//Assume SampleBO is your BO class
if (entity instanceof SampleBO){
String userName= previousState[ArrayUtils.indexOf(propertyNames, "userName")].toString();
//Do what ever you want with values
((SampleBO)entity).setUserName(userName);
}
}
Я использовал это для моих целей BO аудита там я просто принести разницу между объектом previousState
и currentState
как OBJ Json.
класс ObjectDiffVo
class ObjectDiffVo{
propertyName;
oldValue;
newValue;
//getter and setters
}
функция CompareObjDiff
private List<ObjectDiffVo> compareObjDiff(Object[] currentState,
Object[] previousState, String[] propertyNames) {
List<ObjectDiffVo> odVoL = new ArrayList<>();
for (int i = 0; i < propertyNames.length; i++) {
if (previousState[i] != currentState[i]) {
ObjectDiffVo odVo = new ObjectDiffVo();
odVo.setPropertyName(propertyNames[i]);
odVo.setOldValue(previousState[i]);
odVo.setNewValue(currentState[i]);
odVoL.add(odVo);
}
}
return odVoL;
}
Надеется, что это поможет.
Смежные вопросы
- 1. NHibernate Interceptor - OnFlushDirty
- 2. Перечислите через DictionaryAdapter передается OnFlushDirty
- 3. Можете ли вы получить предыдущий объект состояния истории в js?
- 4. Объект состояния перезаписывает предыдущий дочерний элемент при создании нового
- 5. Opengl предыдущий объект исчезает
- 6. Спящий режим: MyInterceptor # onFlushDirty никогда не называется
- 7. autorelease предыдущий объект по заданию
- 8. Почему Hibernate триггер onFlushDirty два раза?
- 9. DDD - Объект переход состояния
- 10. Объект обновления состояния ручек
- 11. Метод ввода, заменяющий предыдущий объект jsonarray
- 12. Объект переопределяет предыдущий для массива объектов
- 13. добавление объекта при обновлении массива предыдущий объект
- 14. Получить предыдущий объект без len (list)
- 15. WPF: Получить следующий/предыдущий визуальный объект
- 16. Следующий и предыдущий через объект пользователя?
- 17. Получить JSON следующий и предыдущий объект
- 18. как получить предыдущий активный объект класса
- 19. Получить предыдущий объект в селекторы цепь
- 20. JSON для JS Array, несуществующий объект Дублирование Предыдущий объект Значения
- 21. Как я могу сохранить предыдущий параметр состояния на 404?
- 22. Предыдущий ответ от пользователя Добавлено в строку состояния
- 23. SQLAlchemy: получить экземпляр объект состояния
- 24. Предыдущий месяц за предыдущий год
- 25. Получить Предыдущий день
- 26. измененный объект после хранения или объект состояния используется
- 27. C# .. Асинхронные сокеты .. где хранится объект состояния?
- 28. responseJs объект состояния обновления без перезаписывания объекта
- 29. объект состояния с Observable.FromAsyncPattern <WebResponse>
- 30. Как расширить объект состояния резьбы GHC