Hibernate zmiana nazwy kolumny

Hibernate zmiana nazwy kolumny
BA
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:Wrocław
  • Postów:259
0

Cześć

nie rozumiem czemu korzystając z adnotacji @Column(name = "NIE_DZIALA") nie zmienia mi się nazwa kolumny w przypadku kiedy korzystam również z adnotacji @OneToMany.
Próbuję w taki sposób:

Kopiuj
@Entity
public class Category extends BaseEntity {

    @Column(name = "DZIALA")
    private String name;

    @OneToMany
    @Column(name = "NIE_DZIALA")
    private Set<Product> products = new HashSet<>();

    public Category() {
    }
}

W wyniku czego dostaję:
screenshot-20171112110809.png
Próbowałem, też robić to tak - przykład z książki Java Persistence, ale też nie działa :(

Kopiuj
@Entity
public class Category extends BaseEntity {

    @Column(name = "DZIALA")
    private String name;

    @ElementCollection
    @CollectionTable(
            name = "CATEGORY_P",
            joinColumns = @JoinColumn(name = "CATEGORY_ID")
    )
    @Column(name = "NIE_DZIALA")
    private Set<Product> products = new HashSet<>();

    public Category() {
    }
}
PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:5 miesięcy
  • Postów:2787
0

Ale co, ty oczekujesz że będziesz mieć w bazie danych kolumnę w której będzie kolekcja? :thinking_face:

Jak masz OneToMany to po stronie Category nie miej w bazie nic, a po stronie produktu miej w bazie CATEGORY_ID i tyle

BA
  • Rejestracja:około 13 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:Wrocław
  • Postów:259
0

Owszem to co mówisz jest ok. Po prostu zastanawiam się jak hibernate tworzy dodatkową tabele dla kolecji jak zmienić nazwę kolumny. Bo w kodzie Javy fajnie jak pole nazywa się products ale w tabeli chciałbym mapowanie category_id product_id, a nie products_id.

PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:5 miesięcy
  • Postów:2787
0

A popróbuj @JoinColumn

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.