Hibernált hiba „Nincs kitartás-szolgáltató az EntityManager számára”

1. Bemutatkozás

Ebben az oktatóanyagban megtudhatjuk, hogyan lehet megoldani egy gyakori hibernált hibát - „Nincs állandóság-szolgáltató az EntityManager számára”. Egyszerűen fogalmazva: a perzisztencia-szolgáltató az alkalmazásunkban használt speciális JPA-megvalósításra utal, hogy objektumokat tároljon az adatbázisban.

Ha többet szeretne megtudni a JPA-ról és annak megvalósításáról, olvassa el a JPA, a Hibernate és az EclipseLink közötti különbségről szóló cikkünket.

2. Mi okozza a hibát

Mikor látjuk a hibát az alkalmazás nem tudja, melyikperzisztencia szolgáltatót kell használni.

Ez akkor fordul elő, ha a perzisztencia szolgáltatót egyik sem említi a kitartás.xml fájlban, és a PersistenceUnitInfo megvalósítási osztály.

3. A hiba kijavítása

A hiba kijavításához egyszerűen meg kell tennünk meghatározza a perzisztencia szolgáltatót a kitartás.xml fájl:

org.hibernate.jpa.HibernatePersistenceProvider

Vagy ha használjuk Hibernálás 4.2-es vagy régebbi verzió:

org.hibernate.ejb.HibernatePersistence

Ha megvalósítottuk a PersistenceUnitInfo alkalmazásunk felületén felül kell írnunk a

getPersistenceProviderClassName () módszer:

@Orride public String getPersistenceProviderClassName () {return HibernatePersistenceProvider.class.getName (); }

Az összes szükséges hibernált üveg rendelkezésre állásának biztosításához fontos hozzáadni a hibernált mag függőség a pom.xml fájl:

 org.hibernate hibernate-core $ {hibernate.version} 

4. Következtetés

Összefoglalva, megláttuk a „Nincs állandóság-szolgáltató az EntityManager számára” hibernált hiba lehetséges okait és a megoldás különböző módjait.

A szokásos módon a Hibernate minta projekt elérhető a GitHubon.