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.