Title: EMF i dane
1EMF i dane
- EMF w plikach i bazie danych
2Topics
3Topics
1
4EMF Framework
- Zapis/odczyt obiektów EMF
PurchaseOrder aPurchaseOrder
POFactory.eINSTANCE.createPurchaseOrder() aPurcha
seOrder.setBillTo("123 Maple Street") Item
aItem POFactory.eINSTANCE.createItem() aItem.se
tProductName("Apples") aItem.setQuantity(12) aIt
em.setPrice(0.50) aPurchaseOrder.getItems().add(
aItem)
- XML- XMI
ltsimplepoPurchaseOrder xmiversion"2.0"
xmlnsxmi"http//www.omg.org/XMI"
xmlnssimplepo"http///s
implepo.ecore"
billTo"123 Maple Street"gt ltitems
productName"Apples" quantity"12"
price"0.5"/gt lt/simplepoPurchaseOrdergt
5EMF Framework
- Zapis modelu w wielu plikach
6Zapis i odczyt XMI
- Zarejestruj fabryke dla danego typu pliku
- Jesli programujesz wtyczki nie musisz ?
- Stwórz/pozyskaj ResourceSet
- Stwórz/pozyskaj Resource
- Wykonaj metode getContents().add()
- Wykonaj metode save()
Snippet
2
7Topics
8Teneo
- Eclipse Modeling Framework Technology (EMFT)
- Mozliwosc zapisu modeli EMF do bazy danych
- Mapowanie poprzez
- Hibernate
- JPOX/JDO 2.0
- Mozliwosc zadawania zapytan HQL
9EMF - Hibernate
- Integracja dwuwarstwowa
- Mapowanie (Mapping)
- Uruchomieniowa (Runtime)
10EMF - Hibernate
http//www.elver.org/hibernate/overview.html
11Mapowanie
- Automatyczne hibernate.hbm.xml generowany w
pamieci na podstawie opisu epakietu - Mozliwosc wykorzystania pliku zewnetrznego pliku
hibernate.hbm.xml - Umiesc go w katalogu epakietu
- HbDataStore PersistenceOptions.USE_MAPPING_FILE -
"true" - Poczatkowa wersje mozesz wygenerowac z menu lub
wywolujacHbHelper.INSTANCE.generateMapping(....)
12EMF - Hibernate
http//www.elver.org/hibernate/overview.html
13EMF Hibernate
- Stwórz i zarejestruj HBDataStore
- Zainicjuj ustawienia Hibernate
- Przez plik hibernate.properties
- Przez obiekt klasy Properties
- Ustaw epakiety (epackages) dla magazynu danych
- Zaincjalizuj mapowanie i stwórz tabele
Snippet
3
14EMF Hibernate
- Zapis
- Otwórz sesje
- Rozpocznij transakcje
- Zapisz obiekt
- Zakoncz transakcje
- Zakoncz sesje
- Odczyt
- Otwórz sesje
- Rozpocznij transakcje
- Zadaj zapytanie HQL
- Zakoncz transakcje
- Zakoncz sesje
Snippet
4
15Schemat bazy
16Schemat bazy
17Schemat bazy
18Koniec
Dziekuje ?