piątek, 3 października 2014

Hibernate w Spring'u

Hibernate

Głównym interfacem który pozwala nam na komunikacje między Hibernatem i Javą jest hibernatowy Session- udostępnia nam np: takie metody jak save(), get(), flush() . Także pierwszą rzeczą którą będziemy musieli zrobić to pobranie referencji do obiektu org.hibernate.session - Dostaniemy ją prosząc o to hibernatowy interface SessionFactory - a ten ostatecznie zdobędziemy poprzez jedną z springowych fabryk.

Dla Spring 3 - będą to np:

 - AnnotationSessionFactoryBean
 - LocalSessionFactoryBean

Główna różnicą między tymi fabrykami jest fakt, że AnnotationSessionFactoryBean przyjmuje parametr "packagesToScan" któremu podajemy(jak nazwa wskazuje) package z naszymi Encjami - oznaczonymi przy pomocy adnotacji(@Entity) - wszystkie te encje zostaną zeskanowane :)  LocalSessionFactoryBean przyjmie po prostu mappingResources z wypisanymi klasami.

Prosta konfiguracja bean'a LocalSessionFactoryBean
Oraz prosta konfiguracja dla AnnotationSessionFactoryBean

No i oczywiście, potrzebujemy jeszcze referencji do jakiegoś dataSource, może to być np: BasicDataSource od apacha, do pom.xml wystarczy dodać dependency dla: oraz dataSource:

Dla Spring 4:

W spring4 sprawa jest trochę postrza - podczas tworzenia LocalSessionFactoryBean możemy podać ... packagesToScan. Reszta jest analogiczna.

Brak komentarzy:

Prześlij komentarz