Programowanie w języku Java WYKŁAD
|
|
- Stanisław Pawłowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Programowanie w języku Java WYKŁAD dr inż. Piotr Zabawa Certyfikowany Konsultant IBM/Rational pzabawa@pk.edu.pl www:
2 WYKŁAD 9 Trwałość w Java cz. 2 wykład o Hibernate został w znacznej części oparty o materiały nieznanego autora
3 Trwałość w Java Czym kierować się przy wyborze podejścia do trwałości? dr inż..piotr Zabawa Instytut Informatyki Wydział Fizyki, Matematyki i Informatyki
4 Trwałość w Java Argumenty za ORM Eliminuje ręczne mapowanie w Java z SQL ResultSet do klas Java. Redukuje ilość pracy wymaganej do obsługi zmiany modelu danych w relacyjnej bazie danych lub po stronie obiektowej w apliakcji. Maksymalizuje wykorzystanie dużej biblioteki trwałości pozwalając na uniknięcie rozwijania rozwiązań problemów już rozwiązanych przez innych. Eliminuje niskopoziomowy kod JDBC i SQL. Maksymalizuje możliwość wykorzystania programowania obiektowego i modelu obiektowego. Wprowadza niezależność pomiędzy bazą danych i jej strukturą (?) Provides database and schema independence. Większość produktów ORM jest darmowa i open source owa. Wiele korporacji dostarcza wsparcia i usług dla produktów ORM. Dostarcza wysoko wydajnościowych cech, jak cache owanie oraz wyrafinowana optymalizacja operacji na bazie danych. dr inż..piotr Zabawa Instytut Informatyki Wydział Fizyki, Matematyki i Informatyki
5 Trwałość w Java Argumenty za JPA Jest stadardem i częścią EJB3 oraz Java EE. Wiele darmowych i open source owych produktów ze wsparciem biznesowym. Przenośność pomiędzy serwerami aplikacyjnymi i produktami trwałościowymi (uniknięcie zależności od dostawcy). Użyteczna i funkcjonalna specyfikacja. Wparcie zarówno dla Java EE jak i dla Java SE. dr inż..piotr Zabawa Instytut Informatyki Wydział Fizyki, Matematyki i Informatyki
6 Trwałość Uwzględnić mapowania: ORM (JPA, Hibernate) GRM XML projekt Spring Data Kwestia obiektowych baz danych.
7 Trwałość Uwzględnić architektoniczne wzorce korporacyjne: DAO (Data Access Object) DTO (Data Transfer Object) ActiveRecord Broker SDO = JDO + DTO (Service Data Object= Java Data Object+ Data Transfer Object)
8 Trwałość w Java Java 8 JDBC a Java 8 Nawiązać do kwestii obsługi wyjątków w Java 8 w kontekście JDBC html dr inż..piotr Zabawa Instytut Informatyki Wydział Fizyki, Matematyki i Informatyki
9 Trwałość w Java Natura problemów z dopasowaniem relacyjnych baz danych do paradygmatu obiektowego: Celem optymalizacji relacyjnych baz danych (normalizacja) jest oszczędność zasobów poprzez unikanie redundancji Celem optymalizacji kodu obiektowego jest czytelność i łatwość wprowadzania zmian Dlatego zestawienie tych dwóch światów jest trudne jest konflikt interesów. dr inż..piotr Zabawa Instytut Informatyki Wydział Fizyki, Matematyki i Informatyki
10 Trwałość w Java Charakter niedopasowania: Granulacja inna ilość klas niż tabel Dziedziczenie nie wspierane bezpośrednio w RDB Asocjacje jednokierunkowe w Java, klucze obce w RDB Krotność asocjacji nie jest specyfikowana wprost w Java, wspierana przez klucze obce w RDB Nawigowanie po danych przechodzenie po obiektach w Java, łączenie tabel (join) w RDB dr inż..piotr Zabawa Instytut Informatyki Wydział Fizyki, Matematyki i Informatyki
11 JPA 2.1
12 JPA 2.1 JPA stanowi specyfikację mapowania obiektowo-relacyjnego i trwałości dedykowaną dla języka programowania Java. JPA 2.1 jest standardem opracowanym przez twórców języka Java w ramach inicjatywy standaryzacyjnej Java Community Process o identyfikatorze JSR 338. Wersja ta jest najnowszą, zatwierdzoną w 2013 roku, wersją standardu JPA obecnie wspieraną jedynie przez następujące produkty: Hibernate EclipseLink Data Nucleus JPA wraz z produktami stanowiącymi implementację tego standardu są łącznie nazywane ORM (Object-Relational Mapping).
13 JPA 2.1 ORM jest obecnie najbardziej dojrzałą koncepcją wiązania danych z relacyjnej bazy danych z obiektami w paradygmacie klasowoobiektowym. Dlatego podejście to oraz jego implementacja zostały przedstawione w ramach wykładu z Java SE. Zwykle ORM prezentuje się w ramach wykładów dopiero w kontekście Java EE, co wymaga uprzedniego zaznajomienia się z rozbudowanym systemem pojęć typowym dla Java EE. Jest to jednak całkowicie zbyteczne i stanowi zbędny balast dla osób pragnących poznać jedynie kwestię ORM. W ramach ORM wykorzystuje się adnotacje w celu powiązania klas z tabelami.
14 JPA 2.1 Potencjalne korzyści ze stosowania JPA: Mniej kodu Spójny model interakcji z bazą danych Wydajność Niezależność od wersji i od dostawcy serwera bazy danych (pod warunkiem nie korzystania ze specyfiki) Uniknięcie znajomości SQL
15 JPA wady Złożoność Trudniejsze do nauki Trudniejsze do debugowania Częstsza degradacja wydajnościowa Ograniczona elastyczność Trudniejsze uwzględnianie specyfiki serwerów bazodanowych
16 JPA public class sequencename="user_pk", generator="usersequence") private Long nullable=false) private String private String fullname; }
17 JPA 2.1 Podstawowy interfejs przy pracy z JPA, to EntityManager: EntityManager entitymanager = entitymanagerfactory.createentitymanager(); Example example = entitymanager.find(example.class, 1L); entitymanager.close();
18 JPA 2.1 Adnotacje
19 JPA public class Order CUSTOMER_ID, referencedcolumnname= ID ) private public class Customer customer ) private Set<Order> orders; }
20 JPA 2.1 Gdy JPA ładuje (fetch) encję z bazy musi wiedzieć czy załadować również encje powiązane z nią relacjami. Eager: pobranie powiązanych encji od razu, domyślne dla Lazy: pobranie powiązanych encji w chwili sięgnięcia do nich w kodzie źródłowy, domyślne dla i customer, fetch=fetchtype.eager) private Set<Order> orders;
21 JPA 2.1 Uprzednie zamknięcie obiektu EtityManager przed odwołaniem do powiązanych encji prowadzi do błędu Lazy Initialization Error.
22 Hibernate
23 Hibernate Hibernate stanowi jedną z kilku implementacji standardu JPA 2.1. Jako produkt tworzony i udostępniany jest przez organizację JBoss, która należy do firmy RedHat:
24 Hibernate Ze względu na fakt przedstawienia w ramach zajęć laboratoryjnych narzędzia Maven podano poniżej sposób wykorzystania Hibernate z poziomu Maven a. Repozytoria Mavena proszę sprawdzić sposób nawigowania po nich! JBoss Nexus (producenta, więc pierwsze): Maven Central (z niewielkim, kilkudniowym opóźnieniem): SourceForge:
25 Hibernate Zależność Hibernate jako produktu dla Mavena (od aktualnej wersji): <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate-core</artifactid> <version>4.3.5.final</version> </dependency>
26 Hibernate Zależność implementacji JPA jako części Hibernate dla Mavena (od aktualnej wersji): <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate-entitymanager</artifactid> <version>4.3.5.final</version> </dependency>
27 Hibernate W czasie używania nowych technologii należy mieć na względzie następujące okoliczności powodujące, że nie należy używać w projektach nie służących jedynie samokształceniu wersji najnowszych oprogramowania: Brak wsparcia przez IDE (przykładem jest brak należytego wsparcia w nowej technologii Java 8 w dostępnych obecnie środowiskach Eclipse) Brak dokumentacji dla produktów open-source (czasmi i niektórych) warto korzystać z dokumentacji do tego produktu, którego się używa w projekcie Zbyt nowe IDE brak wsparcia dla wielu innych technologii Brak wsparcia ze strony społeczności zbyt mało wykrytych i rozwiązanych problemów, których wielość jest typowa dla nowych technologii
28 Hibernate Hiernate jest jednym z najlepiej ocenianych frameworków do realizacji warstwy dostępu do danych (ang. persistance layer = warstwa trwałości). Zapewnia on przede wszystkim odwzorowanie/translację (ang. O/R mapping) danych pomiędzy relacyjną bazą danych a światem obiektowym. Opiera się na wykorzystaniu opisu struktury danych za pomocą języka XML, dzięki czemu można "rzutować" obiekty, stosowane w obiektowych językach programowania, takich jak Java bezpośrednio na istniejące tabele bazy danych. Zawiera też mechanizm pozwalający na inżynierię w przód (ang. forward engineering) struktury bazy danych (tabel i relacji) na podstawie klas oraz inżynierię wsteczną (ang. reverse engineering) polegającą na generowaniu kodu źródłowego klas z bazy danych o określonej strukturze.
29 Hibernate Dodatkowo Hibernate zwiększa wydajność operacji na bazie danych dzięki buforowaniu i minimalizacji ilości przesyłanych zapytań (por. z trybem pracy wsadowej JDBC). Jest to projekt rozwijany jako open source. Według dokumentacji celem Hibernate jest zwolnienie projektanta aplikacji z konieczności ręcznego kodowania 95% zadań związanych z zapewnieniem trwałości danych. Jedną z istotnych zalet tego rozwiązania jest zwolnienie programisty z konieczności przepisywania poszczególnych pól obiektów na pola rekordu i na odwrót.
30 Hibernate Struktura biblioteki: Hibernate Core - podstawowa część biblioteki, wykonująca większość pracy, Hibernate Annotations - element pozwalający zastąpić większą część konfiguracji Hibernate, budowanej do tej pory w XML, poprzez adnotacje w kodzie napisane z użyciem Javy 5. Hibernate Tools które zawierają rozmaite wtyczki (plug-ins) dla Anta oraz darmowego środowiska Eclipse IDE. Wtyczka Hibernate Tools dla Eclipse oferuje: Edytor odwzorowań (uzupełnianie i kolorowanie kodu) Konsolę Hibernate (przegląd konfiguracji, klas, itp. oraz interaktywne zapytania HQL Kreatory i generatory kodu (w tym kompletny reverse-engineering istniejącego schematu bazy danych)
31 Architektura ogólna Hibernate: Hibernate
32 Hibernate Architektura szczegółowa Hibernate została przedstawiona na następnym slajdzie
33 Hibernate
34 Hibernate Plik konfiguracyjny Hibernate może mieć jedną z dwóch postaci: Plik properties o nazwie hibernate.properties (mniej wygodne) Plik XML o nazwie hibernate.cfg.xml W czasie obsługi trwałości za pomocą mapowania obiektoworelacyjnego Hibernate wykorzystuje te informacje.
35 Hibernate interfejsy Interfejsy podstawowe Interfejs Session główny interfejs wykorzystywany w każdej aplikacji. Jest to lekki obiekt, często tworzony i zwalniany. Stanowi formę pośrednią pomiędzy połączeniem i transakcją. Nazywa się go czasem zarządcą trwałości. Interfejs SessionFactory po jednej instacji obiektu dla każdej bazy danych. Służy do tworzenia obiektów klasy Session. Interfejs Configuration służy do konfiguracji i uruchamiania Hibernate. Interfejs Transaction pozwala na wykorzystywanie mechanizmu transakcji i jego użycie jest opcjonalne. Interfejsy Query i Criteria służą do wysyłania zapytań i sterowania procesem ich wykonania. Można wykorzystać język HQL (Hibernate Query Language) lub natywny dla bazy danych SQL.
36 Hibernate interfejsy Interfejsy wywołań zwrotnych (ang. callback) Opcjonalne interfejsy umożliwiające aplikacji otrzymywanie powiadomień o zmianie stanu obiektu. Przykładem zastosowań są operacje audytowe (zapisywanie w bazie danych informacji o aktywnościach systemu softwerowego). Interfejsy Lifecycle i Validator rekacja obiektó trwałych na operacje CRUD Interfejs Interceptor oparty o koncepcję odwróconego sterowania (inversion of control) interfejs pozwalający uniknąć w obsłudze wywołań zwrotnych konieczności implementowania interfejsów Hibernate po stronie aplikacji
37 Hibernate stany obiektów Z perspektywy Hibernate można wyróżnić następujące trzy stany: Transient (ulotny) są to obiekty klas aplikacji nie odwzorowywanych w bazę danych, czyli takie, które nie są trwałe Persistent (trwały) są to trwałe obiekty klas encyjnych. Obiekt staje się trwały po wywołaniu na nim operacji save() z interfejsu Session następuje wtedy powiązanie go z określoną sesją. Egzemplarz obiektu trwałego może też powstać na podstawie informacji z bazy danych uzyskanych w wyniku wykonania zapytania, wyszukania identyfikatora lub przejścia do niego przez graf obiektów z innego obiektu.obiekt trwały może stać się ulotnym po wykonaniu na nim operacji delete() z interfejsu Session wtedy wiersz reprezentujący go zostaje usunięty z tabeli a obiekt odłączony od sesji. Detached (odłączony) obiekt przechodzi w ten stan po zamknięciu jego sesji za pomocą operacji close() obiektu Session. Możliwość ponownego podłączenia do sesji obiektó uzyskanych uprzednio z innej sesji w znaczącym stopniu wpływa na sposób projektowania aplikacji wielowarstwowych. Możliwość zwrócenia obiektów z jednej transakcji do warstwy wyższej (np. warstwy prezentacji) i ponowne użycie ich w innej transakcji stanowi jeden z głównych powodów popularności Hibernate. Wszystkie obiekty pobrane w trakcie trwania transakcji są niejawnie odłączane w momencie zamykania sesji lub w momencie ich serializacji (na przykład w celu przesłania do innego komputera).
38 Hibernate - scenariusze Przykładowy scenariusz uczynienia obiektu trwałym (zapis): SessionFactory sf = new Configuration().configure().buildSessionFactory(); Session s = sf.opensession(); Transaction tx = s.begintransaction(); Osoba o= new Osoba(); o.setimie("zbigniew"); o.setnazwisko("boniek"); s.save(o); tx.commit(); // możliwe jest wycofanie transakcji: tx.rollback()) s.close();
39 Hibernate - scenariusze Przykładowy scenariusz pobrania obiektu z bazy (odczyt): //Wyjątek gdy błędny klucz: Osoba o = (Osoba) s.load(osoba.class, new Long(20)); System.out.println(o.getImie()); albo: // Zwraca null gdy błędny klucz Osoba o = (Osoba) s.get(osoba.class, new Long(20)); System.out.println(o.getImie());
40 Hibernate - scenariusze Przykładowy scenariusz usunięcia obiektu z bazy (zapis): // obiekt stanie się ulotny,ale referencja może zostać: s.delete(o);
41 Hibernate - scenariusze Przykładowy scenariusz modyfikacji obiektu trwałego (zapis): o.setnazwisko("smolarek"); // jeśli zmiany mają natychmiast zostać zapisane w bazie: s.flush();
42 Hibernate Reguły POJO (najdogodniejsze) dla Hibernate są następujące: Metody set/get (accessor/mutator)(metody dostępowe) dla trwałych atrybutów klasy pól w tabeli, dzięki którym mamy dostęp do prywatnych pól klasy Bezargumentowy konstruktor (może być domyślny)-jest wymagany przez Hibernate do tego, aby klasa mogła być utrwalana w bazie. Identyfikator (opcjonalnie) Oprócz domyślnego konstruktora dla każdej klasy, możemy dostarczyć także konstruktor umożliwiający bezpośrednie przypisanie pól innych niż klucze podstawowe. Dzięki temu możemy stworzyć i wypełnić obiekt w jednej czynności zamiast kilku. Klasa nie może być zadeklarowana jako final Może być final, ale w pewnych przypadkach może to np. ograniczać możliwości strojenia wydajności Hibernate może wewnętrznie zarządzać identyfikatorami obiektu (ale jest to niezalecane)
43 Hibernate prosty przykład Klasa POJO bez adnotacji: public class Osoba { private Long id; private String imie; private String nazwisko; public Osoba() {} public void setid(long id) { this.id = id; }
44 Hibernate prosty przykład } public Long getld() { return id; } public void setimie(string imie) { this.imie = imie; } public String getimie() { return imie; } public void setnazwisko(string nazwisko) { this. nazwisko = nazwisko; } public String getnazwisko () { return nazwisko; }
45 Hibernate prosty przykład Klasa POJO = "Osoba") public class @Column(name = "Num_osob") private Long = "Imie") private String = "Nazwisko") private String nazwisko; }
46 Hibernate zapytania HQL Zapytania w języku HQL jest to język zorientowany obiektowo o składni podobnej do SQL odwołujący się do klas a nie do tabel. wykonanie zapytań poprzez list() - zwraca cały wynik zapytania do kolekcji w pamięci (instancje pozostają w stanie trwałym): List osoby= (List) session.createquery("from Osoba as osoba where osoba.imie= 'Zbigniew'").list(); for (int i=0; i<osoby.size(); i++) System.out.println(((Osoba)osoby.get(i)).getImie()); List osoby = (List)s.createQuery("select Osoba.id, Osoba.imie from Osoba as osoba where Osoba.nazwisko = 'Boniek'").list(); for (int i=0; i<osoby.size(); i++) { } Object [ ] tab = (Object [ ]) osoby.get(i); System.out.println(tab[0]+" "+tab[1]);
47 Hibernate zapytania wykonywanie zapytań poprzez iterate() - zwraca wynik w kilku zapytaniach SELECT: może być efektywniejsze od list(), gdy instancje już są w pamięci podręcznej, ale rozwiązanie to jest zazwyczaj wolniejsze. Iterator osoby = s.createquery("from Osoba as osoba where osoba.nazwisko = 'Boniek'").iterate(); while (osoby.hasnext()) { } Osoba o = (Osoba) osoby.next(); System.out.println(o.getImie());
48 Hibernate zapytania Pobieranie obiektów z bazy danych w przypadku zapytań join zawierających odniesienia do tabel połączonych następuje leniwe pobieranie (ang. lazy fetching) rekordów z bazy w czasie pierwszego odwołania do następuje natychmiastowe pobieranie (ang. Eager fetching) rekordów z bazy Oba powyższe zachowania są domyślne.
49 Hibernate zapytania SQL Zapytania w natywnym języku SQL dają możliwość wykorzystania specyficznych dla danego systemu konstrukcji składniowych np. CONNECT w Oracle.
50 Hibernate zapytania Criteria Zapytania poprzez obiekty klasy Criteria umożliwiają budowę zapytań poprzez obiektowe API
51 Hibernate zapytania Example Zapytania poprzez obiekty klasy Example umożliwiają wyszukiwanie danych w oparciu o przykadową instancję (mechanizm QBE QueryByExample)
52 Hibernate dobre praktyki Źródło: Tworzyć wiele małych klas i odwzorowywać je (ang. map) w <component> Dla klas trwałych deklarować własności (ang. properties ) identyfikatora Identyfikować naturalne klucze Umieszczać każde odwzorowanie klasy w jej własnym pliku Ładować odwzorowania jako zasoby Rozważać eksternalizowanie stringów zapytań Nie zarządzać własnymi połączeniami JDBC Rozważać używanie własnych typów Używać ręcznie zakodowanych odwołań do JDBC w wąskich gardłach aplikacji Rozumieć flushing obiektów klasy Session
53 Hibernate dobre praktyki Rozważyć używanie obiektów odłączonych w aplikacjach 3-warstwowych Rozważyć używanie długich kontekstów trwałości w aplikacjach 2- warstwowych Nie traktować wyjątków jako recoverable Preferować lazy fetching dla asocjacji W ramach MVC używać otwartych sesji albo disciplined assembly phase aby uniknąć problemów z unfetched data Rozważyć uniezależnienie logiki biznesowej od Hibernate Nie używać egzotycznych odwzorowań asocjacji Preferować asocjacje dwukierunkowe UWAGA: wielość dobrych praktyk wynika z braku określenia kryterium jakości nie wiemy co kto optymalizuje ani jak zmierzyć jakość zestawu praktyk!
54 Hibernate Przykład wykorzystania Hibernate w aplikacji Java SE p. Klęk. W tym przykładowy plik pom
55 Hibernate Uruchamianie aplikacji z Hibernate - możliwości: Uzyskanie połączenia z istniejącą bazą danych przy starcie lub w trakcie działania Utworzenie bazy danych przy starcie aplikacji kwestia zainicjowania jej danymi Możliwość wykorzystania języka DDL do utworzenia bazy danych
56 Hibernate Praca z Hibernate w środowisku IDE na przykładzie Eclipse a.
57 Hibernate Materiały dodatkowe O wydajności JPA
58 Koniec
Mapowanie obiektowo-relacyjne z wykorzystaniem Hibernate
Wirtualne przedsiębiorstwo II Mapowanie obiektowo-relacyjne z wykorzystaniem Hibernate Łukasz Macierzyński 157588 Daniel Nikończuk 157621 Kacper Oko 157626 Agenda 1. Co to jest mapowanie obiektowo-relacyjne
Bardziej szczegółowoProgramowanie wielowarstwowe i komponentowe
Programowanie wielowarstwowe i komponentowe HIBERNATE CD. Rodzaje relacji Jeden do wielu Pojedyncza Osoba ma wiele Wpisów Wiele do jednego Wiele Wpisów należy do jednej Osoby Jeden do jednego Pojedyncza
Bardziej szczegółowoInformacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4
Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 1. Relacyjne
Bardziej szczegółowoMetody dostępu do danych
Metody dostępu do danych dr inż. Grzegorz Michalski Na podstawie materiałów dra inż. Juliusza Mikody Jak działa JDO Podstawowym zadaniem JDO jest umożliwienie aplikacjom Javy transparentnego umieszczenia
Bardziej szczegółowoJava Persistence API - zagadnienia zaawansowane
Program szkolenia: Java Persistence API - zagadnienia zaawansowane Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Java Persistence API - zagadnienia zaawansowane Java-EE-jpa-pro
Bardziej szczegółowoPodejście obiektowe do relacyjnych baz danych Hibernate.
Podejście obiektowe do relacyjnych baz danych Hibernate. Plan wykładu Czym jest Hibernate? Jakie są zalety pracy z Hibernate? Jak skonfigurować Hibernate? Jak korzystać z Hibernate? Praktyczne przykłady
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Bardziej szczegółowoNHibernate Hibernate dla platformy.net. Hibernate posiada także dużą społeczność, zatem nietrudno uzyskać jakieś wsparcie w przypadku problemów.
Hibernate Każda poważniejsza aplikacja wymaga przechowywania danych w jakiejś bazie danych. Można realizować to na wiele sposobów. Można obsługę bazy danych pisać samodzielnie, do zera, albo skorzystać
Bardziej szczegółowoProjektowanie aplikacji z bazami danych
Systemy mapowania relacyjno-obiektowego Instytut Informatyki Uniwersytet Wrocławski Plan wykładu Wprowadzenie do trwałości Niedopasowanie paradygmatów Architektura warstwowa Czym jest ORM? Problemy i pytania
Bardziej szczegółowoTechnologie dostępu do baz danych z aplikacji Javy:
Technologie dostępu do baz danych z aplikacji Javy: JDBC (ang. Java DataBase Connectivity - łącze do baz danych w języku Java) - interfejs programowania opracowany w 1996 r. przez Sun Microsystems, umożliwiający
Bardziej szczegółowoHibernate. Od Nowicjusza do Profesjonalisty. Dave Minter Jeff Linwood
Hibernate Od Nowicjusza do Profesjonalisty Dave Minter Jeff Linwood Beginning Hibernate: From Novice to Professional ISBN-13 (pbk): 978-1-59059-693-7 ISBN-10 (pbk): 1-59059-693-5 Original edition Copyright
Bardziej szczegółowoHibernate. Adrian Gawor, Adam Klekotka, Piotr Kubisz. Technologie Biznesu Elektronicznego. 12 maja 2009
Agenda Hibernate Adrian Gawor, Adam Klekotka, Piotr Kubisz Technologie Biznesu Elektronicznego 12 maja 2009 Adrian Gawor, Adam Klekotka, Piotr Kubisz Hibernate 1 / 42 Agenda 1 2 3 4 5 6 7 Adrian Gawor,
Bardziej szczegółowoWprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o
Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa
Bardziej szczegółowoGdzie jest moja tabela?
Gdzie jest moja tabela? Czyli jak sobie radzić w Javie i SQL gdy zmienia się schemat bazy danych. Tomasz Skutnik 21 Listopada 2011 r UWIELBIAM piratów programować. Dziś koduję sklep internetowy. Jak rozmawiać
Bardziej szczegółowoBazy danych tworzenie aplikacji bazodanowych ORM / JPA
Bazy danych tworzenie aplikacji bazodanowych ORM / JPA ORM (Object Relationa Mapping)/ORB (Object Relational Broker) to nazwa mechanizmu tłumaczenia obiektowej postaci danych wykorzystywanej w aplikacjach
Bardziej szczegółowoTworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2
Kod szkolenia: Tytuł szkolenia: EJB Tworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2 Dni: 3 Opis: Adresaci szkolenia: Szkolenie adresowane jest
Bardziej szczegółowoPaweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Architektura Trwałość przezroczysta Konfiguracja, konfiguracja mapowania Dziedziczenie klas Kolekcje Asocjacje Cykl życia obiektów Trwałość przechodnia
Bardziej szczegółowoSerwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.
Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Konwersja i walidacja W wyniku działania konwersji i walidacji surowe dane, przesyłane w postaci
Bardziej szczegółowoKurs programowania aplikacji bazodanowych
Wykład 6 Instytut Informatyki Uniwersytet Wrocławski Plan wykładu CastleProject i wzorzec ActiveRecord Wybrane możliwości Castle ActiveRecord Inicjalizja i konfiguracja Tworzenie klasy encji, dziedziczenie
Bardziej szczegółowoJAVA PERSISTENCE API CZĘŚĆ 2 ASPEKTY ZAAWANSOWANE. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
JAVA PERSISTENCE API CZĘŚĆ 2 Waldemar Korłub ASPEKTY ZAAWANSOWANE Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska JPA w aplikacji Java EE Połączeniem z bazą danych zarządza serwer aplikacji
Bardziej szczegółowoHibernate mapowanie baz danych
Hibernate mapowanie baz danych Jest to technologia pozwalająca mapować dane obiektowe na odpowiadające im struktury w bazach danych. ORM - Object-to-Relational Mapping. Jest odpowiedzią na znikomą ilość
Bardziej szczegółowoEJB 3.0 (Enterprise JavaBeans 3.0)
EJB 3.0 (Enterprise JavaBeans 3.0) Adrian Dudek Wirtualne Przedsiębiorstwo 2 Wrocław, 1 czerwca 2010 Plan prezentacji 1 Wprowadzenie Cel prezentacji Czym jest EJB 3.0? Historia 2 3 Cel prezentacji Wprowadzenie
Bardziej szczegółowoPodstawy frameworka Spring
Podstawy frameworka Spring Adresaci szkolenia: Szkolenie przeznaczone jest dla programistów znających język Java, chcących poszerzyć swoje kompetencje w zakresie tworzenia aplikacji.koncepcja szkolenia
Bardziej szczegółowo1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Bardziej szczegółowoWarstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.
Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy
Bardziej szczegółowoNowy powiew od Słońca: EJB 3.0. Copyright Piotr Kochański & Erudis,
Nowy powiew od Słońca: EJB 3.0 Wstęp Agenda EJB podstawowe informacje Problemy EJB 1.X i 2.X Zmiany wprowadzone w EJB v. 3.0 uproszczone API nowe komponenty encyjne wzorce i antywzorce Przykład, czyli
Bardziej szczegółowoWprowadzenie do Doctrine ORM
Wprowadzenie do Doctrine ORM Przygotowanie środowiska Do wykonania ćwiczenia konieczne będzie zainstalowanie narzędzia Composer i odpowiednie skonfigurowanie Netbeans (Tools->Options->Framework & Tools->Composer,
Bardziej szczegółowoJPA Java Persistance API
JPA Java Persistance API Java Persistence API (JPA) Specyfiacja ipisująca standardy mapiwania ibieitiwi-relacyjnegi (ORM ibject relatinal mapping) Przyiładiwe implementacje: Hibernate OpenJPA EclipseLini
Bardziej szczegółowoAutomatyczne generowanie kodu. Marek.Berkan@e-point.pl. 4Developers, 26 marca 2010
4Developers, 26 marca 2010 Zakres wykładu O czym zamierzam opowiedzieć: Przyspieszenie tworzenia aplikacji Ułatwienie utrzymania aplikacji Budowanie kontraktów pomiędzy developerami a innymi uczestnikami
Bardziej szczegółowoKarolina Rusin, Paweł Biczysko, Michał Olejnik. 11 maja 2009
Konfiguracja i poprawne stosowanie Politechnika Wrocławska Informatyka 11 maja 2009 Agenda Wprowadzenie Konfiguracja i poprawne stosowanie 1 Wprowadzenie do ORM 2 jako framework ORM 3 Konfiguracja w projekcie
Bardziej szczegółowoInformatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java
Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny
Bardziej szczegółowoMetody dostępu do danych
Metody dostępu do danych dr inż. Grzegorz Michalski Na podstawie wykładów dra inż. Juliusza Mikody Obiekt interfejsu Session Jest to podstawowy interfejs komunikacji pomiędzy aplikacją, a API Hibernate
Bardziej szczegółowoProgramowanie w języku Java WYKŁAD
Programowanie w języku Java WYKŁAD dr inż. Piotr Zabawa Certyfikowany Konsultant IBM/Rational e-mail: pzabawa@pk.edu.pl www: http://www.pk.edu.pl/~pzabawa 26.05.2014 WYKŁAD 13 Refleksja Data Access Object
Bardziej szczegółowoProjektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz
Projektowanie oprogramowania Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz 1 Wykonanie czterowarstwowej aplikacji EE z dostępem do bazy danych,
Bardziej szczegółowoORM w Javie. Adam Michalik 2007
ORM w Javie Adam Michalik 2007 ORM ORM O/RM O/R mapping Object-Relational Mapping Mapowanie obiektowo relacyjne Odwzorowanie obiektowo-relacyjne Co to jest ORM? Odwzorowanie obiektowo-relacyjne pozwala
Bardziej szczegółowoWzorce logiki dziedziny
Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),
Bardziej szczegółowoAplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin
Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin Czym jest Spring Boot? Spring Boot jest szkieletem aplikacji, opiera się o Spring Framework czyli Framework szeroko
Bardziej szczegółowoPodstawowe wykorzystanie Hibernate
Podstawowe wykorzystanie Hibernate Cel Wykonanie prostej aplikacji webowej przedstawiającą wykorzystanie biblioteki. Aplikacja sprawdza w zależności od wybranej metody dodaje, nową pozycje do bazy, zmienia
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoBaza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne
Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z możliwości utworzenia struktury bazy danych z
Bardziej szczegółowoInformatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.
Informatyka I Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 Standard JDBC Java DataBase Connectivity
Bardziej szczegółowoAplikacje Internetowe, Servlety, JSP i JDBC
Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny
Bardziej szczegółowoNHibernate. Narzędzie mapowania obiektowo - relacyjnego
NHibernate Narzędzie mapowania obiektowo - relacyjnego Autor : Maciej Białorucki Mapowanie obiektowo-relacyjne Mapowanie obiektowo - relacyjne Object Relation Mapping Dwa światy Dlaczego nie stosować baz
Bardziej szczegółowoEJB 2.x oraz zmiany w standardzie dla EJB 3.0. Michał Stanek
Enterprise JavaBean EJB 2.x oraz zmiany w standardzie dla EJB 3.0 Michał Stanek Plan prezentacji Czym jest EJB Architektura aplikacji J2EE oraz kontener EJB Typy komponentów JavaBean EJB 1.0, EJB 2.x Wady
Bardziej szczegółowoTomasz Dobek. t.dobek@students.mimuw.edu.pl
Spring Framework Tomasz Dobek t.dobek@students.mimuw.edu.pl Plan prezentacji Spring z lotu ptaka Kontener Spring IoC Spring AOP Menedżer transakcji w Springu Spring DAO Testy integracyjne Podsumowanie
Bardziej szczegółowoAnaliza porównawcza technologii odwzorowania obiektowo-relacyjnego dla aplikacji Java
Analiza porównawcza technologii odwzorowania obiektowo-relacyjnego dla aplikacji Java Piotr Błoch, Marek Wojciechowski Politechnika Poznańska e mail: Marek.Wojciechowski@cs.put.poznan.pl Abstrakt. Zaawansowane
Bardziej szczegółowoOracle11g: Wprowadzenie do SQL
Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom
Bardziej szczegółowoProjektowanie obiektowe oprogramowania Wzorce architektury aplikacji (3) Wykład 11 Repository, Unit of Work Wiktor Zychla 2016
Projektowanie obiektowe oprogramowania Wzorce architektury aplikacji (3) Wykład 11 Repository, Unit of Work Wiktor Zychla 2016 Repository dodatkowa warstwa abstrakcji na obiektową warstwę dostępu do danych.
Bardziej szczegółowoKurs programowania aplikacji bazodanowych
Wykład 5 Instytut Informatyki Uniwersytet Wrocławski Plan wykładu Wprowadzenie do XPO Podstawowe obiekty Utrwalanie obiektów Transakcje i współbieżność Wzorzec unit of work Odwzorowanie dziedziczenia Asocjacje
Bardziej szczegółowoInstrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania
Instrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania Opis biznesowy świata rzeczywistego Wymagania funkcjonalne i niefunkcjonalne aplikacji Diagram przypadków życia Diagramy klas i sekwencji:
Bardziej szczegółowoProjektowanie obiektowe oprogramowania Wykład 9 Wzorce architektury aplikacji (1) Wiktor Zychla 2013
Projektowanie obiektowe oprogramowania Wykład 9 Wzorce architektury aplikacji (1) Wiktor Zychla 2013 1 Automated code generation To bardziej technika wspomagająca niż wzorzec, ale wykorzystywana w praktyce
Bardziej szczegółowoTechniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Abstrakcja funkcyjna Struktury Klasy hermetyzacja
Bardziej szczegółowoEnterprise JavaBeans 3.0
Enterprise JavaBeans 3.0 Jacek Laskowski http://www.jaceklaskowski.pl Politechnika Poznańska Poznań, 07.12.2007, wersja 1 O mnie... Entuzjasta technologii Java EE 5 Założyciel i lider Warszawa JUG Członek
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 24 maja 2018 Plan wykładu 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 509 / 553 Plan wykładu Trwałość obiektów 1 Trwałość obiektów
Bardziej szczegółowoZasady generowania kluczy głównych Język Java Persistence Podstawowa architektura wielowarstwowych aplikacji w oparciu o wzorce oprogramowania
Zasady generowania kluczy głównych Język Java Persistence Podstawowa architektura wielowarstwowych aplikacji w oparciu o wzorce oprogramowania Autor Zofia Kruczkiewicz Wzorce oprogramowania 6 1. Różne
Bardziej szczegółowoWprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/
Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia
Bardziej szczegółowoSzkolenie wycofane z oferty. Program szkolenia: Enterprise Java Beans 3.0/3.1
Szkolenie wycofane z oferty Program szkolenia: Enterprise Java Beans 3.0/3.1 Informacje: Nazwa: Enterprise Java Beans 3.0/3.1 Kod: Java-EE-EJB Kategoria: Java EE Grupa docelowa: developerzy Czas trwania:
Bardziej szczegółowoJAVA PERSISTENCE API. Wykorzystano fragmenty wykładów M. Piotrowskiego i M. Wójcika. Waldemar Korłub
Wykorzystano fragmenty wykładów M. Piotrowskiego i M. Wójcika JAVA PERSISTENCE API Waldemar Korłub Platformy Technologiczne KASK ETI Politechnika Gdańska Java Persistence API 2 Specyfikacja dla bibliotek
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Podstawowe cechy i możliwości języka Scala mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 2017 1 / 32 mgr inż. Krzysztof Szwarc Programowanie obiektowe Informacje
Bardziej szczegółowoDostęp do baz danych w aplikacjach Java EE
Dostęp do baz danych w aplikacjach Java EE Wykład prowadzi: Marek Wojciechowski JDBC SQLJ Plan wykładu Biblioteka znaczników JSTL SQL EJB (do wersji 2.1) Odwzorowanie obiektowo-relacyjne (O/RM) Java Persistence
Bardziej szczegółowoProgramowanie w języku Java. Wykład 13: Java Platform, Enterprise Edition (Java EE)
Programowanie w języku Java Wykład 13: Java Platform, Enterprise Edition (Java EE) Standard J2EE Programowanie w języku Java 2 J2EE - komunikacja Programowanie w języku Java 3 J2EE warstwa biznesowa Programowanie
Bardziej szczegółowoTypy metod: konstruktory, destruktory, selektory, zapytania, iteratory.
Typy metod: konstruktory, destruktory, selektory, zapytania, iteratory. Konstruktory Konstruktory w językach obiektowych są to specjalne metody wywoływane podczas tworzenia nowego obiektu i służące do
Bardziej szczegółowoPRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Bardziej szczegółowoProgramowanie MorphX Ax
Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn
Bardziej szczegółowoTechnologie obiektowe
WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność
Bardziej szczegółowoUniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Wstęp Programowanie w Javie 2 mgr inż. Michał Misiak Agenda Założenia do wykładu Zasady zaliczeń Ramowy program wykładu
Bardziej szczegółowoWdrożenie do projektu
Wdrożenie do projektu Zaczynamy od stworzenia zwykłego projektu Java. Środowisko z jakiego korzystam to Netbeans IDE w wersji 8.1. Możesz wykorzystywać inne IDE, bylebyś stosował analogiczne kroki w swoim
Bardziej szczegółowoLABORATORIUM 8,9: BAZA DANYCH MS-ACCESS
UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS
Bardziej szczegółowoKrótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.
GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans
Bardziej szczegółowoModelowanie obiektowe
Modelowanie obiektowe ZPO 2018/2019 Dr inż. W. Cichalewski Materiały wykonane przez W. Tylman Diagramy klas Diagramy klas Zawiera informacje o statycznych związkach między elementami (klasami) Są ściśle
Bardziej szczegółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoLK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika
LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika Prowadzący: Dr inż. Jacek Habel Instytut Technologii Maszyn i Automatyzacji Produkcji Zakład Projektowania Procesów
Bardziej szczegółowoJDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008
JDBC w LoXiMie Interfejs Java Database Connectivity dla systemu LoXiM Adam Michalik 2008 Sterownik JDBC co to jest? Sterownik JDBC to zbiór klas implementujących interfejsy opisane w specyfikacji JDBC
Bardziej szczegółowoEnterprise JavaBeans
Enterprise JavaBeans 1. Wprowadzenie. 2. Przegląd komponentów EJB. komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 3. Kontener komponentów EJB: JBoss. 1 Enterprise JavaBeans
Bardziej szczegółowoJęzyk JAVA podstawy. Wykład 4, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy Wykład 4, część 1 1 Język JAVA podstawy Plan wykładu: 1. Podstawy modelowania obiektowego 2. Konstruktory 3. Dziedziczenie, związki pomiędzy klasami, UML 4. Polimorfizm 5. Klasy abstrakcyjne
Bardziej szczegółowoODWZOROWANIE OBIEKTOWO-RELACYJNE
PODSTAWY BAZ DANYCH Mateusz Wojtaszek Agnieszka Walczak Kamil Lisiecki ODWZOROWANIE OBIEKTOWO-RELACYJNE Co to jest ORM? ORM to skrótowe oznaczenie dla "mapowanie obiektowo-relacyjne" (od angielskiego Object-Relational
Bardziej szczegółowoWprowadzenie do baz danych
Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych
Bardziej szczegółowoProgramowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,
Bardziej szczegółowoObsługa transakcji rozproszonych Java. Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska
Obsługa transakcji rozproszonych w języku j Java Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska Plan prezentacji Transakcje i ich własności Proste transakcje w JDBC
Bardziej szczegółowoJAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.
JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod
Bardziej szczegółowoPodyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle
Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle EFEKTY KSZTAŁCENIA Wiedza Absolwent tej specjalności
Bardziej szczegółowoPHP: bazy danych, SQL, AJAX i JSON
1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji
Bardziej szczegółowo22 października Akademia Górniczo-Hutnicza, Automatyka i Robotyka. Porównanie LINQ i NHibernate. Mateusz Mazur Ale o co chodzi?
Mazur (m-a-t-i@o2.pl) 22 października 2008 Akademia Górniczo-Hutnicza, Automatyka i Robotyka Plan Wyjaśnienie tematyki Przykład wprowadzający Wyjaśnienie pojęć wydajnościowe, funkcjonalne Praktyczne przedstawienie
Bardziej szczegółowoBaza danych sql. 1. Wprowadzenie
Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z edytora graficznego struktury bazy danych, który
Bardziej szczegółowo4 Web Forms i ASP.NET...149 Web Forms...150 Programowanie Web Forms...150 Możliwości Web Forms...151 Przetwarzanie Web Forms...152
Wstęp...xv 1 Rozpoczynamy...1 Co to jest ASP.NET?...3 W jaki sposób ASP.NET pasuje do.net Framework...4 Co to jest.net Framework?...4 Czym są Active Server Pages (ASP)?...5 Ustawienia dla ASP.NET...7 Systemy
Bardziej szczegółowoWzorce dystrybucji i wspólbieżności autonomicznej
Wzorce dystrybucji i wspólbieżności autonomicznej 1. Wzorce dystrybucji, fasada zdalna (Remote Facade), obiekt transfery danych (Data Transfer Object), 2. Wzorce współbieżności autonomicznej, blokada optymistyczna
Bardziej szczegółowoObiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody
Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,
Bardziej szczegółowoPaweł Rajba
Paweł Rajba pawel@cs.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Używanie kursorów Rodzaje kursorów Praca z kursorami Co to jest kursor? Cykl życia kursora utworzenie pobieranie wartości ewentualnie
Bardziej szczegółowoProgramowanie w Ruby
Programowanie w Ruby Wykład 6 Marcin Młotkowski 14 listopada 2012 Plan wykładu Trwałość obiektów Bazy danych DBM Bazy danych SQL Active records Szeregowanie obiektów Obiekt Serializacja @tytul = 'Pan Tadeusz'
Bardziej szczegółowoTechnologia informacyjna
Technologia informacyjna Bazy danych Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2016 Plan wykładu Wstęp do baz danych Modele baz danych Relacyjne bazy danych Język SQL Rodzaje
Bardziej szczegółowoUML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.
UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami
Bardziej szczegółowoWzorce projektowe warstwy danych
POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI Katedra Architektury Systemów Komputerowych Jarosław Kuchta Instrukcja do laboratorium z przedmiotu Projektowanie Aplikacji Internetowych
Bardziej szczegółowoProjektowanie obiektowe oprogramowania Wzorce architektury aplikacji (3) Wykład 11 Repository, Unit of Work Wiktor Zychla 2017
Projektowanie obiektowe oprogramowania Wzorce architektury aplikacji (3) Wykład 11 Repository, Unit of Work Wiktor Zychla 2017 Repository dodatkowa warstwa abstrakcji na obiektową warstwę dostępu do danych.
Bardziej szczegółowoProgramowanie w Javie 2. Płock, 26 luty 2014 r.
Programowanie w Javie 2 Płock, 26 luty 2014 r. Zaliczenie wykładu i ćwiczeń Zaliczenie ćwiczeń (projekt na zaliczenie, 3 prace domowe) Zaliczenie wykładu (referat na 1h) Ocena ćwiczeń: 70% projekt + 30%
Bardziej szczegółowoBazy danych 2. Wykład 1
Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu
Bardziej szczegółowoPodstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko
Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych
Bardziej szczegółowoGrzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat
Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych
Bardziej szczegółowoDb4o obiektowa baza danych wersja.net
Wstęp Db4o obiektowa baza danych wersja.net Db4o (database for objects) to obiektowa baza danych na platformę Java i.net. Pełna wersja bazy db4o jest dostępna na dwóch licencjach: open source: pozwala
Bardziej szczegółowoRozdział 48 Transpers generyczna mikroarchitektura warstwy dostępu do danych 1 Wstęp
Rozdział 48 Transpers generyczna mikroarchitektura warstwy dostępu do danych Streszczenie. Rozdział podejmuje tematykę nowoczesnych rozwiązań bazodanowych w aplikacjach J2EE (ang. Java 2 Platform, Enterprise
Bardziej szczegółowoWprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Zakład Informatyki Narzędzia i środowiska programistyczne Laboratorium 1 Wprowadzenie Prowadzący: Kierunek: Semestr: Rok: Informatyka Zimowy 2 O Sobie Od 2014
Bardziej szczegółowo