Tworzenie aplikacji z użyciem biblioteki Hibernate

download Tworzenie aplikacji z użyciem biblioteki Hibernate

of 34

description

Devcast "Tworzenie aplikacji z użyciem biblioteki Hibernate" jest przeznaczony dla osób, które chciałyby poznać jeden z najpopularniejszych i najbardziej funkcjonalnych mapperów obiektowo-relacyjnych, dostępny w Javie i będący inspiracją dla wielu innych ORM. Devcast zaczyna się od omówienia podstawowych zasad korzystania z Hibernate i niezbędnych aspektów konfiguracji, przez zasady wiązania ze sobą klas języka Java z tabeli relacyjnych baz danych, aż po możliwość zastosowania Hibernate jako implementację standardu JPA. W devcaście są poruszone także takie zagadnienia, jak język Hibernate Query Language, transakcje bazodanowe, czy rozszerzenia rdzenia Hibernate.

Transcript of Tworzenie aplikacji z użyciem biblioteki Hibernate

Tworzenie aplikacji z uyciem biblioteki HibernateMateriay pochodz ze strony: www.devcastzone.com

copyright BNS MEDIA

www.devcastzone.com

Tworzenie aplikacji z uyciem biblioteki HibernateTworzenie klas encji i plikw powizao

copyright BNS MEDIA

www.devcastzone.com

Tred moduu1. Struktura klas encji 2. Konwencja JavaBean 3. Gwny plik konfiguracyjny

4. Plik powizao XML5. Schemat nawizywania poczenia w Hibernatecopyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

3

Struktura klas encji Klasy encji s tradycyjnymi klasami POJO Plain Old Java Object Klasy te powinny speniad zaoenia konwencji JavaBean

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

4

Konwencja JavaBean Klasa musi zawierad publiczny konstruktor bezparametryczny Pola klasy powinny byd prywatne

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

5

Konwencja JavaBean Pola klasy powinny byd dostpne za pomoc tzw. akcesorw Akcesory (metody dostpu) umoliwiaj pobieranie i ustawianie wartoci pl. Dziki zastosowaniu metod moliwe jest dodanie niezbdnej logiki lub walidacji na poziomie encji

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

6

Konwencja JavaBean Nazewnictwo akcesorw: Pobieranie getXXX() lub isXXX() (dla typu boolean) Ustawianie setXXX(Typ nowaWartosc)

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

7

Gwny plik konfiguracyjny Domylnie hibernate.cfg.xml w gwnym katalogu ze rdami Zawiera ustawienia poczenia z baz danych, a take dodatkowe ustawienia Hibernate

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

8

Gwny plik konfiguracyjny

Wskazuje na plik XML mapowao pomidzy relacjami a klasami encji

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

9

Plik powizao XML Wie pola klas z konkretnymi kolumnami

Opisuje zwizki pomidzy relacjami (i encjami)

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

10

Plik powizao XML

Pominicie powizao niektrych pl w pliku spowoduje pominicie adowania odpowiednich wartoci z bazy

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

11

Przykad

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

12

Schemat nawizywania poczenia w Hibernate Klasa Configuration wczytuje dane z pliku konfiguracyjnego Interfejs SessionFactory pozwala na utworzenie obiektu sesji

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

13

Schemat nawizywania poczenia w Hibernate Interfejs Session umoliwia wykonywanie rnych operacji przede wszystkim pobierania i modyfikacji danych Wykonywanie zapytao w jzyku HQL jest moliwe za pomoc interfejsu Query

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

14

PrzykadConfiguration conf = new Configuration().configure(); SessionFactory factory = conf.buildSessionFactory(); Session s = factory.openSession(); List l = s.createQuery("SELECT k.imie from Klient k").list(); System.out.println(l.size());

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

15

Tworzenie aplikacji z uyciem biblioteki HibernateZaawansowane aspekty tworzenia plikw powizao

copyright BNS MEDIA

www.devcastzone.com

Tred moduu1. 2. 3. 4. 5. 6. Atrybuty kolumn w plikach powizao Rodzaje zwizkw midzy relacjami Zwizki w klasach encji Zwizki w plikach mapowao XML Omwienie najwaniejszych zwizkw Dziedziczenie

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

17

Atrybuty kolumn w plikach powizao name length not-null unique sql-type default

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

18

Rodzaje zwizkw midzy relacjami 1-1 (one-to-one)

1-m (one-to-many)

m-m (many-to-many)

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

19

Zwizki w klasach encji 1-1: jeden klient jedno zamwienie. W klasie Klient istnieje pole typu Zamowienie i vice versa 1-m: jeden klient wiele zamwieo. W klasie Klient istnieje pole typu Set lub List, a w klasie Zamowienie pole typu Klient

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

20

Zwizki w klasach encji

m-m: wielu klientw wiele zamwieo. W klasie Klient istnieje pole typu Set i vice versa (Set w klasie Zamowienie)

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

21

Zwizki w plikach mapowao XML Reprezentacja kolekcji encji podrzdnych (klient.zamowienia), one-to-many:

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

22

Zwizki w plikach mapowao XML Reprezentacja encji nadrzdnej w klasie encji podrzdnej (zamowienie.klient), many-to-one:

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

23

Omwienie najwaniejszych zwizkw Jednokierunkowy zwizek many-to-one przy uyciu klucza obcego:

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

24

Omwienie najwaniejszych zwizkw Jednokierunkowy zwizek one-to-one przy uyciu klucza obcego:

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

25

Omwienie najwaniejszych zwizkw Dwukierunkowy zwizek one-to-one przy uyciu klucza obcego

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

26

Omwienie najwaniejszych zwizkw Dwukierunkowy zwizek many-to-many:

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

27

Dziedziczenie Pojcie znane z programowania obiektowego przeniesione na grunt relacji w bazach danych Rnice w sposobie przechowywania danych wymuszaj inn reprezentacj danych w bazach danych

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

28

Dziedziczenie Podejcie nr 1:

Wszystkie podklasy w jednej tabeli

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

29

Dziedziczenie Podejcie nr 2:

Podklasy w tabelach zczanych przy uyciu klucza gwnego

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

30

Dziedziczenie Podejcie nr 3:

Kada podklasa dysponuje wasn tabel (zawierajc take pola nadklasy)

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

31

Tworzenie aplikacji z uyciem biblioteki Hibernate program penego szkolenia1. Wprowadzenieo o o o

Relacje a obiekty ORM zasady dziaania Hibernate moliwoci Hibernate jako skadnik aplikacji niezbdne kroki konfiguracji Struktura klas encji Konwencja JavaBean Gwny plik konfiguracyjny Plik powizao XML Schemat nawizywania poczenia w Hibernate Atrybuty kolumn w plikach powizao Rodzaje zwizkw midzy relacjami Zwizki w klasach encji Zwizki w plikach mapowao XML Omwienie najwaniejszych zwizkw DziedziczenieTworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

2. Tworzenie klas encji i plikw powizaoo o o o o

3. Zaawansowane aspekty tworzenia plikw powizaoo o o o o ocopyright BNS MEDIA

32

Tworzenie aplikacji z uyciem biblioteki Hibernate program penego szkolenia4. Jzyk HQLo o o

Metody wykonywania zapytao HQL Zapytania pobierajce Masowe operacje modyfikowania i usuwania

5.

Zastosowanie Hibernate w JPAoo o o

Czym jest JPA? Podobieostwa midzy Hibernate a JPA Plik konfiguracyjny Adnotacje

6.

Rozszerzenia Hibernate CoreHibernate Shards o Hibernate Search o Hibernate Tools o Hibernate Validator o Hibernate Metamodel Generator o Hibernate OGM Zagadnienia zaawansowane o Interfejs Criteria o Transakcje o Metody equals() i hashCode()o

7.

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

33

Tworzenie aplikacji z uyciem biblioteki Hibernate http://www.devcastzone.com/course,tworzenie-aplikacji-zuzyciem-biblioteki-hibernate

Zapraszamy

copyright BNS MEDIA

Tworzenie aplikacji z uyciem biblioteki Hibernatewww.devcastzone.com

34