Witam.
Załóżmy, że istnieje sobie pewien obiekt DTO, którego definicja jest dostarczana do aplikacji w formacie Swagger JSON.
Ten obiekt ma bardzo ważne biznesowe znaczenie i każda zmiana jego pół w pewnym serwisie XYZ musi być logowana.
Ja widzę trzy rozwiązania:
- ręcznie logować - a co za tym idzie naprawdę zaśmiecać kod i duplikować długość metody.
Jest to moim zdaniem najprostsze i najwydajniejsze rozwiązanie w tej sytuacji. - przed wykonaniem metody skopiować ten obiekt, i po jej wykonaniu porównać wynik z oryginałem (za pomocą refleksji)
Skomplikowane i niewydajne. - opakować ten obiekt za pomocą dynamicznego proxy (CGLIB) i przechwytywać każdy setter.
Trochę niewydajne.
Jak byście sobie z problemem tego typu?
Pozdrawiam.