Az entitásosztályok nevének leképezése az SQL táblanevekre JPA segítségével

1. Bemutatkozás

Ebben a rövid oktatóanyagban megtanuljuk, hogyan állítsunk be SQL táblázatneveket a JPA segítségével.

Kitérünk arra, hogyan állítja elő a JPA az alapértelmezett neveket, és hogyan adhatja meg az egyedi neveket.

2. Alapértelmezett táblázatnevek

A JPA alapértelmezett táblanév-generálása a megvalósításra jellemző.

Például a hibernált állapotban az alapértelmezett táblanév az első nagybetűs osztály neve. Ez a ImplicitNamesStrategy szerződés.

De megváltoztathatjuk ezt a viselkedést a PhysicalNamingStrategy felület.

3. Használata @Asztal

Egyéni SQL táblanév beállításának legegyszerűbb módja az entitás megjegyzése @javax.persistence.Táblázat és definiálja a névparaméterét:

@Entity @Table (name = "ARTICLES") public class Article {// ...}

A táblázat nevét egy statikus végső változóban is tárolhatjuk:

@Entity @Table (name = Article.TABLE_NAME) public class Article {public static final String TABLE_NAME = "CIKKEK"; // ...}

4. A táblanév felülírása JPQL lekérdezésekben

A JPQL lekérdezésekben alapértelmezés szerint az entitásosztály nevét használjuk:

válassza ki a * cikket

De megváltoztathatjuk a névparaméter definiálásával a @ javax.persistence.Entity kommentár:

@Entity (név = "MyArticle")

Ezután megváltoztattuk a JPQL lekérdezést:

válassza a * -t a MyArticle-ből

5. Következtetés

Ebben a cikkben megtudtuk, hogyan állítja elő a JPA az alapértelmezett táblaneveket, és hogyan állíthatja be az SQL táblák nevét a JPA segítségével.

Mint mindig, az összes forráskód elérhető a GitHubon.