Relacje. 1. Modelowanie relacji. - siedem rodzajów relacji J2EE. - relacje jedno i wielokierunkowe, - relacje reprezentowane przez kolekcje.
|
|
- Urszula Czajkowska
- 7 lat temu
- Przeglądów:
Transkrypt
1 Relacje 1. Modelowanie relacji. - siedem rodzajów relacji J2EE. - relacje jedno i wielokierunkowe, - relacje reprezentowane przez kolekcje. 1
2 Relacje Modelowanie pojęć biznesowych wymaga łączenia komponentów encyjnych w relacje. Specyfikacja JEE określa siedem rodzajów relacji: jeden-do-jednego (one-to-one), jeden-do-wielu (one-to-many), wiele-do-jednego (many-to-one) oraz wiele-do-wielu (many-to-many). Relacja może mieć charakter jednokierunkowy (unidirectional) lub dwukierunkowy (bidirectional). 2
3 Jednokierunkowa relacja 1:1 CUSTOMER FIRST_NAME LAST_NAME ADDRES_ 1 1 ADDRESS STREET CITY public class Customer implements java.io.serializable { private public Address getaddress( ) { return address; 3
4 Jednokierunkowa relacja 1:1 <entity-mappings> <entity class="com.titan.domain.customer" access="property"> <attributes> <id name="id"> <generated-value/> </id> <one-to-one name="address" targetentity="com.titan.domain.address" fetch="lazy" optional="true"> <cascade>all</cascade> <join-column name="address_"/> </one-to-one> </attributes> </entity> </entity-mappings> 4
5 Złączenie wg. public Address getaddress( ) { return address; Kontener automatycznie zmodyfikuje tabelę CUSTOMER: CREATE TABLE CUSTOMER( INT PRIMARY KEY NOT NULL, address_id INT, ) ALTER TABLE CUSTOMER ADD CONSTRAINT customerrefaddress FOREIGN KEY (address_id) REFERENCES ADDRESS (id); 5
6 Dwukierunkowa relacja 1:1 CUSTOMER FIRST_NAME LAST_NAME CREDIT_CARD_ 1 1 CREDIT_CARD NUMBER EXP_DATE Relacja dwukierunkowa polega na tym, ze jeden obiekt (encja) otrzymuje referencję do drugiego obiektu (encji) oraz drugi obiekt posiada referencję do pierwszego. Relacje dwukierunkowe są odwzorowane w relacyjnym modelu danych identycznie jak relacje jednokierunkowe. 6
7 Dwukierunkowa relacja public class CreditCard implements java.io.serializable { private Customer customer; // nazwa atrybutu w klasie Customer, którego dotyczy public Customer getcustomer( ) { return this.customer; Klasa Customer nie ulega zmianie w porównaniu z relacją public class Customer implements java.io.serializable { private public CreditCard getcreditcard( ) { return creditcard; 7
8 Dwukierunkowa relacja 1:1 Przykład programu wiążącego encje Customer oraz CreditCard: Customer cust = new Customer( ); CreditCard card = new CreditCard( ); cust.setcreditcard(card); card.setcustomer(cust); entitymanager.persist(cust); Ponieważ w adnotacji OneToOne encji Customer ustawiliśmy atrybut cascade={cascadetype.all odpowiedni wpis w tabeli CREDIT_CARD zostanie utworzony automatycznie. 8
9 Strona właścicielska i przeciwna Ustawione w powyższy sposób odwzorowanie określa, że obiekt Customer jest stroną właścicielską (owning side) natomiast CreditCard stroną przeciwną (inverse side). Poprawna zmiana właściciela karty kredytowej musi odbywać się następująco: Customer newcust = em.find(customer.class, newcustid); CreditCard card = oldcustomer.getcreditcard( ); oldcustomer.setcreditcard(null); newcust.setcreditcard(card); natomiast jej usunięcie jest realizowane przez: Customer cust = em.find(customer.class, id); em.remove(cust.getcreditcard( )); cust.setcreditcard(null); 9
10 Dwukierunkowa relacja 1:1 <entity-mappings> <entity class="com.titan.domain.customer" access="property"> </entity> <entity class="com.titan.domain.creditcard" access="property"> <attributes> <id name="id"> <generated-value/> </id> <one-to-one name="customer" target-entity="com.titan.domain.customer" mapped-by="creditcard"/> </attributes> </entity> </entity-mappings> 10
11 Jednokierunkowa relacja 1:N CUSTOMER FIRST_NAME LAST_NAME 1 N PHONE NUMBER TYPE public class Customer implements java.io.serializable { private Collection<Phone> phonenumbers = new public Collection<Phone> getphones( ) { return phonenumbers; 11
12 Jednokierunkowa relacja 1:N Obsługa encji jest analogiczna jak w przypadku jednokierunkowej relacji jedendo-jednego. Customer cust = entitymanager.find(customer.class, pk); Phone phone = new Phone(" "); // dodanie telefonu cust.getphones( ).add(phone); // usunięcie telefonu cust.getphones( ).remove(phone); entitymanager.remove(phone); 12
13 Jednokierunkowa relacja 1:N <entity-mappings> <entity class="com.titan.domain.customer" access="property"> <attributes> <id name="id"> <generated-value/> </id> <one-to-many name="phones" targetentity="com.titan.domain.phone"> <cascade-all/> <join-column name="customer_"/> </one-to-many> </attributes> </entity> </entity-mappings> 13
14 Relacja z wykorzystaniem tabeli złączenia CUSTOMER FIRST_NAME LAST_NAME CUSTOMER_PHONE 1 N N 1 CUSTOMER_ PHONE_ PHONE NUMBER public class Customer implements java.io.serializable { private joincolumns={@joincolumn(name="customer_"), inversejoincolumns={@joincolumn(name="phone_")) public Collection<Phone> getphonenumbers( ) { return phones; 14
15 Relacja z wykorzystaniem tabeli złączenia <entity-mappings> <entity class="com.titan.domain.customer" access="property"> <attributes> <id name="id"> <generated-value/> </id> <one-to-many name="phones" targetentity="com.titan.domain.phone"> <cascade-all/> <join-table name="customer_phone"> <join-column name="customer_"/> <inverse-join-column name="phone_"/> </join-table> </one-to-many> </attributes> </entity> </entity-mappings> 15
16 Jednokierunkowa relacja N:1 CRUISE NAME SHIP_ N 1 SHIP public class Cruise implements java.io.serializable { private public Ship getship( ) { return ship; 16
17 Jednokierunkowa relacja N:1 <entity-mappings> <entity class="com.titan.domain.cruise" access="property"> <attributes> <id name="id"> <generated-value/> </id> <many-to-one name="ship" target-entity="com.titan.domain.ship" fetch="eager"> <join-column name="ship_"/> </many-to-one> </attributes> </entity> </entity-mappings> 17
18 Dwukierunkowa relacja 1:N CRUISE NAME SHIP_ 1 N RESERVATION AMOUNT_PA CRUISE_ Analogicznie jak w poprzednim wypadku relacja dwukierunkowa jest wykorzystywana gdy obie encje muszą wiedzieć o sobie nawzajem. W modelu programistycznym odpowiednie adnotacje są dodane do definicji obu klas. Zgodnie ze specyfikacją JPA stroną właścicielską jest komponent naprzeciwko encji z licznością równą jeden. W naszym przypadku to Reservation. 18
19 Dwukierunkowa relacja public class Reservation implements java.io.serializable { private public Cruise getcruise( ) { return public class Cruise implements java.io.serializable { private Collection<Reservation> reservations = new ArrayList<Reservation>( public Collection<Reservation> getreservations( ) { return reservations; 19
20 Dwukierunkowa relacja 1:N <entity-mappings> <entity class="com.titan.domain.cruise" access="property"> <attributes> <id name="id"><generated-value/></id> <one-to-many name="ship" target-entity="com.titan.domain.reservation" fetch="lazy" mapped-by="cruise"> </one-to-many> </attributes> </entity> <entity class="com.titan.domain.reservation" access="property"> <attributes> <id name="id"><generated-value/></id> <many-to-one name="cruise" target-entity="com.titan.domain.cruise" fetch="eager"> <join-column name="cruise_"/> </many-to-one> </attributes> </entity> </entity-mappings> 20
21 Dwukierunkowa relacja N:N CUSTOMER FIRST_NAME LAST_NAME CUSTOMER_RESERVATION CUSTOMER_ RESERVATION_ RESERVATION AMOUNT_PA Relacja wiele-do-wielu w relacyjnym modelu danych odwzorowana z wykorzystaniem tabeli złączenia 21
22 Dwukierunkowa relacja public class Reservation implements java.io.serializable { private Set<Customer> customers = new joincolumns={@joincolumn(name="reservation_"), inversejoincolumns={@joincolumn(name="customer_")) public Set<Customer> getcustomers( ) { return public class Customer implements java.io.serializable { private Collection<Reservation> reservations = new ArrayList<Reservation>( public Collection<Reservation> getreservations( ) { return reservations; 22
23 Dwukierunkowa relacja N:N <entity-mappings> <entity class="com.titan.domain.reservation" access="property"> <attributes><id name="id"><generated-value/></id> <many-to-many name="customers" target-entity="com.titan.domain.customer" fetch="lazy"> <join-table name="reservation_customer"> <join-column name="reservation_"/> <inverse-join-column name="customer_"/> </join-table> </many-to-many> </attributes> </entity> <entity class="com.titan.domain.customer" access="property"> <attributes><id name="id"><generated-value/></id> <many-to-many name="cruise" target-entity="com.titan.domain.reservation" fetch="lazy" mapped-by="customers"> </many-to-many> </attributes> </entity> </entity-mappings> 23
24 Jednokierunkowa relacja N:N CABIN NAME DECK CABIN_RESERVATION CABIN_ RESERVATION_ RESERVATION public class Reservation implements joincolumns={@joincolumn(name="reservation_"), inversejoincolumns={@joincolumn(name="cabin_")) public Set<Cabin> getcabins( ) { return cabins; 24
25 Jednokierunkowa relacja N:N <entity-mappings> <entity class="com.titan.domain.reservation" access="property"> <attributes> <id name="id"> <generated-value/> </id> <many-to-many name="cabins" target-entity="com.titan.domain.cabin" fetch="lazy"> <join-table name="cabin_reservation"> <join-column name="reservation_"/> <inverse-join-column name="cabin_"/> </join-table> </many-to-many> </attributes> </entity> </entity-mappings> 25
26 Relacje reprezentowanie przez kolekcje JPA umożliwia stosowanie następujących kolekcji do reprezentowania relacji jedendo-wielu i wiele-do-wielu: java.util.collection, java.util.set, java.util.list joincolumns={@joincolumn(name="reservation_"), inversejoincolumns={@joincolumn(name="customer_")) public List<Customer> getcustomers( ) { return customers; <many-to-many name="customers" target-entity="com.titan.domain.customer" fetch="lazy"> <order-by>lastname ASC</order-by> <join-table name="reservation_customer"> <join-column name="reservation_"/> <inverse-join-column name="customer_"/> </join-table> </many-to-many> 26
27 public Map<String, Phone> getphonenumbers( ) { return phonenumbers; <one-to-many name="phonenumbers" target-entity="com.titan.domain.phone" fetch="lazy"> <cascade-all/> <map-key name="number"/> <join-column name="customer_"/> </one-to-many> 27
28 Podsumowanie JEE w ramach odwzorowania relacyjno-obiektowego umożliwia korzystanie z siedmiu typów relacji. Odwzorowanie jest określone poprzez mechanizm adnotacji lub konfigurację zapisaną w pliku persistance.xml. Aby modelować relacje obejmujące wiele obiektów możemy korzystać z czterech podstawowych typów kolekcji. 28
Relacje. 1. Modelowanie relacji. - siedem rodzajów relacji J2EE. - relacje jedno i wielokierunkowe, - relacje reprezentowane przez kolekcje.
1 Relacje 1. Modelowanie relacji. - siedem rodzajów relacji J2EE. - relacje jedno i wielokierunkowe, - relacje reprezentowane przez kolekcje. 2 Relacje Modelowanie pojęć biznesowych wymaga łączenia komponentów
Bardziej szczegółowoEnterprise JavaBeans. 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss.
1 Enterprise JavaBeans 1. Architektura EJB: komponenty encyjne, komponenty sesyjne, komponenty sterowane komunikatami. 2. Kontenery EJB JBoss. 2 Enterprise JavaBeans Enterprise JavaBeans (EJB) to specyfikacja
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ółowoJava Enterprise Edition spotkanie nr 6. przygotował Jacek Sroka. Java Persistence API
Java Enterprise Edition spotkanie nr 6 Java Persistence API Trwałość Serializacja dane reprezentowane binarnie lub w XMLu brak wyszukiwania brak transakcji O/R mapping zazwyczaj: klasa->tabela, obiekt->wiersz,
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ół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ółowoTworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1
Tworzenie tabel Tabela podstawowa struktura, na której zbudowana jest relacyjna baza danych. Jest to zbiór kolumn (atrybutów) o ustalonych właściwościach, w których przechowuje się dane. Dane te są reprezentowane
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ółowoHibernate. 1. Wprowadzenie. 2. Uruchomienie dostarczonego przykładu. 3. Własny przykład.
1 Hibernate 1. Wprowadzenie. 2. Uruchomienie dostarczonego przykładu. 3. Własny przykład. 2 Wprowadzenie Hibernate (http://www.hibernate.org) jest narzędziem realizującym odwzorowanie obiektów Javy na
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ół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ół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ół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ółowoDziedziczenie i język EJB QL
Dziedziczenie i język EJB QL 1. Odwzorowanie hierarchii komponentów encyjnych SINGLE_TABLE, TABLE_PER_CLASS, JOINED. 2. Podstawy języka zapytań EJB QL interfejs Query, proste zapytania, relacje i złączenia,
Bardziej szczegółowoStanowe komponenty sesyjne
Stanowe komponenty sesyjne 1. Porównanie komponentów stanowych i bezstanowych. 2. Cykl życia stanowego komponentu sesyjnego, 3. Komponenty sesyjne a kontekst utrwalania, 4. Zagnieżdżanie komponentów sesyjnych,
Bardziej szczegółowoE:\DYDAKTYKA\ZAI\ZWWW\Laboratoria\L07\Java Persistence.doc 2011-lis-24, 17:0 Zaawansowane aplikacje internetowe Laboratorium Java Persistence.
Zaawansowane aplikacje internetowe Laboratorium Java Persistence. Adaptacja rozwiązania dla środowiska NetBeans 7.0.1: Łukasz Przytuła, opracowanie materiałów: Andrzej Dawidowicz Do wykonania ćwiczeń potrzebne
Bardziej szczegółowoAutor: Joanna Karwowska
Autor: Joanna Karwowska Klucz podstawowy PRIMARY KEY Klucz kandydujący UNIQUE Klucz alternatywny - klucze kandydujące, które nie zostały wybrane na klucz podstawowy Klucz obcy - REFERENCES Tworząc tabelę,
Bardziej szczegółowoWprowadzenie do projektowania i wykorzystania baz danych Relacje
Wprowadzenie do projektowania i wykorzystania baz danych Relacje Katarzyna Klessa Dygresja nt. operatorów SELECT 2^2 SELECT 2^30 SELECT 50^50 2 Dygresja nt. operatorów SELECT 2^30 --Bitwise exclusive OR
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ółowo3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota
Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)
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ółowoWykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach
Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym. Modele - konceptualne reprezentacja obiektów w
Bardziej szczegółowoPODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"
PODSTAWY BAZ DANYCH 5. Modelowanie danych 1 Etapy tworzenia systemu informatycznego Etapy tworzenia systemu informatycznego - (według CASE*Method) (CASE Computer Aided Systems Engineering ) Analiza wymagań
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ółowoBezstanowe komponenty sesyjne i zdarzenia zwrotne
Bezstanowe komponenty sesyjne i zdarzenia zwrotne 1. Zdarzenia zwrotne. klasy nasłuchujące, klasy nasłuchujące a dziedziczenie. 2. Bezstanowe komponenty sesyjne. interfejsy: bazowy, zdalny i lokalny, obiekty
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ółowoZbiór pytań nr 2. 1 Tabela DEPARTMENTS ma następującą strukturę:
Zbiór pytań nr 2 1 Tabela DEPARTMENTS ma następującą strukturę: Nazwa kolumny Typ danych Uwagi dept_id NUMBER(4) NOT NULL, PRIMARY KEY dept_name VARCHAR2(30) mgr_id NUMBER(6) location_id NUMBER(4) Które
Bardziej szczegółowoPaweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Historia i standardy Podstawy relacyjności Typy danych DDL tabele, widoki, sekwencje zmiana struktury DML DQL Podstawy, złączenia,
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ółowoBEAN VALIDATION. Waldemar Korłub. Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska
BEAN VALIDATION Waldemar Korłub Narzędzia i aplikacje Java EE KASK ETI Politechnika Gdańska Bean Validation Uniwersalny mechanizm walidacji danych we wszystkich warstwach aplikacji Warstwa interfejsu,
Bardziej szczegółowoBazy danych Ćwiczenia projektowe
Bazy danych Ćwiczenia projektowe Przygotował: Piotr Hajder Katedra Informatyki Stosowanej i Modelowania Wydział Inżynierii Metali i Informatyki Przemysłowej, AGH Agenda 01. Powtórka 02. Interfejs CRUD
Bardziej szczegółowoJava EE: JSF + EJB + JPA
Java EE: JSF + EJB + JPA Celem ćwiczenia jest utworzenie prostej aplikacji bazodanowej umożliwiającej przeglądanie i dodawanie zleceń serwisowych. Ćwiczenie pokazuje współpracę technologii JSF (podstawowej
Bardziej szczegółowo1. Model ACID. 2. Deklaratywne zarządzanie transakcjami, atrybuty transakcji. 3. Propagacja transakcji. transakcje rozproszone, propagacja kontekstu
Transakcje 1. Model ACID. 2. Deklaratywne zarządzanie transakcjami, atrybuty transakcji. 3. Propagacja transakcji. transakcje rozproszone, propagacja kontekstu utrwalania. 3. Izolacja typowe problemy,
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ółowoJęzyk SQL. Rozdział 9. Język definiowania danych DDL, część 2.
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji
Bardziej szczegółowoProgramowanie w języku Java. Bazy danych SQLite w Javie
Programowanie w języku Java Bazy danych SQLite w Javie Co to jest SQLite SQLite to bezserwerowa, nie wymagająca konfiguracji relacyjna baza danych. Znajduje szerokie zastosowanie np.. w systemie android
Bardziej szczegółowoInstytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl fb.com/groups/bazydanychmt/ Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 4 (Asocjacje,
Bardziej szczegółowoPaweł Cieśla. Dokumentacja projektu
Paweł Cieśla Dokumentacja projektu Projekt Project1 został utworzony i skompilowany na próbnej wersji Delphi XE 4. Po uruchomieniu programu należy kliknąć przycisk Wczytaj plik tekstowy, następnie wskazać
Bardziej szczegółowoBazy danych Ćwiczenia projektowe
Bazy danych Ćwiczenia projektowe Przygotował: Piotr Hajder Katedra Informatyki Stosowanej i Modelowania Wydział Inżynierii Metali i Informatyki Przemysłowej, AGH Agenda 01. Typy danych 02. Polecenia DDL
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ółowoZaawansowane Techniki Bazodanowe
Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Zaawansowane Techniki Bazodanowe Krzysztof Koptyra, Dawid Tomaszewski Raport
Bardziej szczegółowoZaawansowane aplikacje internetowe - laboratorium
Zaawansowane aplikacje internetowe - laboratorium Java Persistence. Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne NetBeans IDE 5.5 wraz z serwerem Sun Java System Application
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ółowoPodstawy języka SQL. SQL Structured Query Languagestrukturalny
Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych
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ółowoSIECI KOMPUTEROWE I BAZY DANYCH
KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB2: TEMAT: Relacyjne bazy danych Cz. I, II Cel laboratorium
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ółowoSELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek
SELECT SELECT kolumna1, kolumna2,, kolumnan FROM tabela wybrane kolumny SELECT * FROM tabela wszystkie kolumny select * from Orders select CustomerID, CompanyName, Country from Customers WHERE SELECT *
Bardziej szczegółowoPrzykładowa baza danych BIBLIOTEKA
Przykładowa baza danych BIBLIOTEKA 1. Opis problemu W ramach zajęć zostanie przedstawiony przykład prezentujący prosty system biblioteczny. System zawiera informację o czytelnikach oraz książkach dostępnych
Bardziej szczegółowoProjektowanie Aplikacji Internetowych Jarosław Kuchta. Wzorce projektowe warstwy biznesowej
Jarosław Kuchta Wzorce projektowe warstwy biznesowej Wzorce projektowe dotyczące danych, obiektów i logiki biznesowej Transfer Object Assembler Łączy dane pochodzące z różnych komponentów biznesowych Composite
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ół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ółowoTworzenie modelu logicznego i fizycznego danych.
Tworzenie modelu logicznego i fizycznego danych. W celu stworzenia modelu danych wykorzystamy program ata Architect wchodzący w skład pakietu narzędzi CASE Power esigner, który pozwala utworzyć tzw. logiczny
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ółowoWprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.
Bazy Danych i Systemy informacyjne Wykład 2 Piotr Syga 16.10.2017 Dodawanie, usuwanie i zmienianie rekordów Wstawianie rekordu wstawianie do tabeli INSERT INTO A VALUES ( fioletowy, okrągły, słodko-kwaśny
Bardziej szczegółowoKomponenty sterowane komunikatami
Komponenty sterowane komunikatami 1. Usługa JMS asynchroniczność, model przesyłania komunikatów, 2. Przykład wysyłanie wiadomości, odbieranie wiadomości, komponent sterowany komunikatami 3. Komponenty
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ółowoJęzyk SQL, zajęcia nr 2
Język SQL, zajęcia nr 2 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Funkcja agregująca
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ółowo1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi
1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) Tworząc tabelę nie możemy określić, do którego pliku trafi, lecz możemy określić do której grupy plików trafi Zawsze istnieje grupa zawierająca
Bardziej szczegółowoUPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');
polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {
Bardziej szczegółowoACESS- zadania z wykorzystaniem poleceń SQL
ACESS- zadania z wykorzystaniem poleceń SQL Dane są relacje o schematach: Pracownik ( (nr integer, nazwisko text(12), etat text(10), szef integer, pracuje_od date, placa_pod Currency, placa_dod Currency,
Bardziej szczegółowoDB2 XML Extender. Opracowane na podstawie dokumentacji IBM XML Extender
DB2 XML Extender Opracowane na podstawie dokumentacji IBM XML Extender mgr inż. Adam Duszeńko Politechnika Śląska w Gliwicach, 2005 Rozszerzenie DB2 XML Extender umożliwia: - dostęp i składowanie dokumentów
Bardziej szczegółowoBazy danych 6. Klucze obce. P. F. Góra
Bazy danych 6. Klucze obce P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób ten (żargonowo:
Bardziej szczegółowoModelowanie wymiarów
Wymiar Modelowanie wymiarów struktura umożliwiająca grupowanie danych z tabeli faktów implementowana jako obiekt bazy danych DIMENSION wykorzystanie DIMENSION zaawansowane przepisywanie zapytań (ang. query
Bardziej szczegółowoJęzyki i metody programowania Java. Wykład 2 (część 2)
Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego
Bardziej szczegółowoBazy danych - Materiały do laboratoriów VIII
Bazy danych - Materiały do laboratoriów VIII dr inż. Olga Siedlecka-Lamch Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 23 kwietnia 2011 roku Polecenie COMMIT i ROLLBACK Polecenie
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ółowoJava EE: JSF + EJB + JPA + CDI + BV
Java EE: JSF + EJB + JPA + CDI + BV Ćwiczenie 1 Celem ćwiczenia jest utworzenie prostej aplikacji bazodanowej umożliwiającej przeglądanie i dodawanie zleceń serwisowych. Ćwiczenie pokazuje współpracę technologii
Bardziej szczegółowoProjektowanie aplikacji z bazami danych
NHibernate Instytut Informatyki Uniwersytet Wrocławski Plan wykładu NHibernate Interfejsy Trwałość automatyczna i przezroczysta Definicja metadanych odwzorowujących Odwzorowanie dziedziczenia Mapowanie
Bardziej szczegółowoObiektowe bazy danych
Obiektowe bazy danych 1 Plan rozdziału 2 Wprowadzenie obiektowy model danych Obiekty w bazie danych definiowanie i przechowywanie składowe i metody konstruktory referencje dziedziczenie i polimorfizm Kolekcje
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ółowoEJB 3.0 & JBoss Seam. 25 kwietnia 2007 Jacek Gerbszt 1
EJB 3.0 & JBoss Seam 25 kwietnia 2007 Jacek Gerbszt 1 Wyzwania współczesnych aplikacji? Rozproszenie, zdalne wywołania Przetwarzanie transakcyjne Bezpieczeństwo Skalowalność Klastrowanie Łatwe wytwarzanie
Bardziej szczegółowoMonika Kruk Mariusz Grabowski. Informatyka Stosowana WFiIS, AGH 13 grudzień 2006
OBIEKTOWOŚĆ W BAZIE DANYCH ORACLE Monika Kruk Mariusz Grabowski Informatyka Stosowana WFiIS, AGH 13 grudzień 2006 Plan prezentacji kilka słów o bazie danych ORACLE rzecz o obiektach ORACLE tworzenie typów
Bardziej szczegółowoASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3
3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0
Bardziej szczegółowoRemote Method Invocation 17 listopada 2010
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja klienckak interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
Bardziej szczegółowoWprowadzenie do języka T-SQL. Michał Bleja
Wprowadzenie do języka T-SQL Michał Bleja Składnia polecenia SELECT SELECT ALL DISTINCT lista_select FROM lista_from WHERE warunki_selekcji_dla_wierszy GROUP BY wyrażenie HAVING warunki_selekcji_dla_grup
Bardziej szczegółowoUsługa TimerService ejbtimeout() @javax.ejb.timeout
TimerService i JNDI 1. Usługa TimerServiece, interfejsy TimedObject, TimerService, Timer, TimerHandle transakcje, zastosowanie usługi w komponentach EJB, cykl życia EJB, problemy. 2. Zasoby JNDI i wstrzykiwanie,
Bardziej szczegółowoProgramowanie komponentowe
Enterprise Piotr Błaszyński Wydział Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego 5 czerwca 2019 EJB Enterprise to podstawowa technologia komponentowa platformy Java Enterprise Edition.
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ółowoRemote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1
interfejs (w języku Java), wywiedziony z Remote obiekt Podejście obiektowe do budowy systemów rozproszonych aplikacja kliencka interfejs serwer stub szkielet sieć Mechanizm RMI umożliwia tworzenie obiektów
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ółowoSQL/MySQL. Rafał Kern
SQL/MySQL Rafał Kern 1 SQL (Structured Query Language) Deklaratywny - opisujemy warunki, jakie musi spełniać wynik Służy do zarządzania danymi w relacyjnych bazach danych Składnia/zapytania SQL DML (Data
Bardziej szczegółowoPodejście obiektowe do budowy systemów rozproszonych
Podejście obiektowe do budowy systemów rozproszonych interfejs (w języku Java), wywiedziony z Remote obiekt aplikacja kliencka interfejs serwer stub szkielet sieć Dariusz Wawrzyniak (IIPP) 1 Mechanizm
Bardziej szczegółowoUtrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Przykład
Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Przykład Autor Zofia Kruczkiewicz Wzorce oprogramowania 5 1. Tworzenie bazy danych
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ół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ółowoD D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?
D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się
Bardziej szczegółowoKurs programowania aplikacji bazodanowych
Wykład 4 Instytut Informatyki Uniwersytet Wrocławski Plan wykładu Wprowadzenie do trwałości Niedopasowanie paradygmatów, architektura warstwowa Systemy ORM Hibernate Interfejsy Trwałość automatyczna i
Bardziej szczegółowoProjekt dziennika lekcyjnego
Projekt dziennika lekcyjnego 16 czerwca 2014 [Wpisz tutaj streszczenie dokumentu. Streszczenie jest zazwyczaj krótkim podsumowaniem treści dokumentu. Wpisz tutaj streszczenie dokumentu. Streszczenie jest
Bardziej szczegółowoModelowanie związków encji
Modelowanie związków encji Instrukcja 1. Projekt danych metodą modelowania związków encji Do projektowania struktury bazy danych wykorzystuje się metodę Modelowania Związków Encji Jest to powszechnie stosowana
Bardziej szczegółowoWykład 6. SQL praca z tabelami 3
Wykład 6 SQL praca z tabelami 3 Łączenie wyników zapytań Język SQL zawiera mechanizmy pozwalające na łączenie wyników kilku pytań. Pozwalają na to instrukcje UNION, INTERSECT, EXCEPT o postaci: zapytanie1
Bardziej szczegółowoRemote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1
P d jś i bi kt d b d t ó Podejście obiektowe do budowy systemów rozproszonych Dariusz Wawrzyniak (IIPP) 1 interfejs (w języku Java),wywiedziony idi z Remote obie kt aplikacja klie ncka interfe js serw
Bardziej szczegółowoBartosz Jachnik - Kino
Bartosz Jachnik - Kino I. Opis bazy Prezentowana baza danych stworzona została na potrzeby prowadzenia kina. Zawiera ona 8 tabel, które opisują filmy grane w danym okresie w kinie, wraz ze szczegółowym
Bardziej szczegółowoProjektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie bazy danych Jarosław Kuchta Projektowanie Aplikacji Internetowych Możliwości projektowe Relacyjna baza danych Obiektowa baza danych Relacyjno-obiektowa baza danych Inne rozwiązanie (np. XML)
Bardziej szczegółowoBazy danych Ćwiczenia z SQL
Bazy danych Ćwiczenia z SQL W ćwiczeniach wykorzystano przyk adowy schemat bazy danych dostarczany z Personal Oracle 8 Definicję schematu i dane tabel zawiera plik bdemobld sql (c) 2001 Katedra Informatyki
Bardziej szczegółowoInstrukcja CREATE TABLE
Podstawy języka SQL 2 Instrukcja CREATE TABLE CREATE TABLE tabela (pole_1 typ [(rozmiar)] [NOT NULL] [indeks_1] [, pole_2 typ [(rozmiar)] [NOT NULL] [indeks_2] [,...]] [, CONSTRAINT indeks_wielopolowy
Bardziej szczegółowoBazy danych 2. Wykład 5 Structured Query Language (SQL) c.d. DDL
Bazy danych 2 Wykład 5 Structured Query Language (SQL) c.d. DDL Dziedzina (DOMAIN) Dziedzina to zdefiniowany przez uŝytkownika zbiór dopuszczalnych wartości definiowany niezaleŝnie od definicji tabel Składnia
Bardziej szczegółowoBazy danych. Dr inż. Paweł Kasprowski
Plan wykładu Bazy danych Podstawy relacyjnego modelu danych Dr inż. Paweł Kasprowski pawel@kasprowski.pl Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność
Bardziej szczegółowo