2015-12-21 9 views
5

Pracuję nad projektem Java EE przy użyciu Netbeans. Automatycznie wygenerowałem jednostki i kontrolery JPA przy użyciu bazy danych.Automatyczne dodawanie `insertable = false, updatable = false` do elementów generowanych przez Netbeans

Chcę teraz zaktualizować bazę danych, dodając więcej tabel lub aktualizując istniejące. Problem napotkasz jest to, że muszę ponownie wygenerować wszystkie podmioty i kontrolery WZP - czego nie chcą, jak większość moich podmiotów zostały zmodyfikowane w celu włączenia

insertable = false, updatable = false 

w @Column gdzie baza danych używa current_timestamp . Jeśli je zregeneruję, będę musiał ponownie zmodyfikować wszystkie elementy, aby dołączyć insertable = false, updatable = false.

To jest to, co próbuję osiągnąć po stworzeniu.

@Column(name = "CREATED_ON", insertable = false, updatable = false) 
@Temporal(TemporalType.TIMESTAMP) 
private Date createdOn; 
+0

Zazwyczaj ustawienie właściwości hibernacji 'hibernate.hbm2ddl.auto' na ** update ** powinno jedynie aktualizować twój schemat, w którym wykrywane są zmiany, więc powinno to rozwiązać twój problem. Czy możesz spróbować tego podejścia? – Bonifacio

+0

Nie mogę znaleźć tej nieruchomości w moim projekcie – miqdadamirali

+0

Jeśli tak, proszę dołączyć następujący wiersz do pliku ** persistence.xml **: ' ' – Bonifacio

Odpowiedz

0

Trzeba to zrobić w 2 etapach, na każdym kroku można wybrać obiekty do tworzenia i jeśli z nich wybrać właściwie nie będzie pisać na istniejących klasach:

  1. Generowanie podmioty z bazy
  2. generowanie klas kontrolerów z jednostki

Kiedy generują podmioty z istniejących tabel należy wybrać tabele, które chcesz utworzyć. Po prostu zrób to i nie wybieraj już istniejących. Kliknij prawym przyciskiem myszy projekt i wybierz New-> Inne-> Trwałość (kategoria) -> Entity Classes z bazy pojawia się następujący dialog:

enter image description here

Następnie zrobić to samo z wyjątkiem wybierz JPA Controller Klasy z Entity Classes

+1

To nie odpowiada na pytanie o automatyczne dodanie' insertable = false, updatable = false' do zmiennej 'current_timestamp' w Entity – miqdadamirali

Powiązane problemy