Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Wyłącz automatyczną aktualizację hibernacji przy spłukiwaniu na synonimach tylko do odczytu

Najprawdopodobniej twoje encje stają się "brudne" w tym samym momencie, w którym są ładowane z bazy danych, a Hibernate uważa, że ​​musi przechowywać zmiany. Dzieje się tak, jeśli akcesory (metody pobierania i ustawiania) nie zwracają dokładnie tej samej wartości lub odwołania który został ustalony przez Hibernate.

W naszym kodzie stało się tak z listami, programiści tworzyli nowe instancje list, ponieważ nie podobał im się typ, który otrzymali w setterze.

Jeśli nie chcesz zmieniać kodu, zmień mapowanie na dostęp do pola.

Możesz również uniemożliwić Hibernate przechowywanie zmian, ustawiając tryb FlushMode na nigdy w sesji, ale to tylko ukryje prawdziwy problem, który będzie nadal występował w innych sytuacjach i doprowadzi do niepotrzebnych aktualizacji.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Łączenie ciągów zagregowanych w Oracle 10g

  2. Jak sprawić, by indeks nie nadawał się do użytku, a następnie przebudowany w indeksie?

  3. Zrób skumulowaną sumę w widoku wyrocznia

  4. Tworzenie tabeli bazy danych w SQL, dziwny błąd

  5. Poziomy izolacji w wyroczni