VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 5.

Slides:



Advertisements
Podobné prezentace
Webové rozhraní pro datové úložiště
Advertisements

Úvod do platformy Java EE
Ing. Jan Mittner MySQL Workbench 2. Základy práce s databází 3. Subversion 2.
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
Ing. Jan Mittner Rozšíření modelu 2. Vazba 1:n 3. Vazba m:n 2.
Návrh a tvorba WWW Cvičení 6
PROGRAMOVACÍ JAZYKY (c) Tralvex Yeap. All Rights Reserved.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
A4B33DS & X33MIS Zdeněk Kouba
Adobe Dreamweaver CS4 Ing. Martin Dosedla.
Úvod do databází Databáze.
Databáze Jiří Kalousek.
Apache, PHP, MySQL Lukáš Masopust Web server Apache Aplikace schopná zpracovat HTTP požadavek Nejpoužívanější Web server Vytváří ho The Apache.
Vývoj aplikací pro SharePoint
Tutoriál Vlastní složka My EBSCOhost
Úvod. školní: příprava na předmět Databázové systémy praktický: webové aplikace databázové systémy základy vývoje webových aplikací od návrhu databáze.
Rozšíření jednouživatelské verze IS na víceuživatelskou Prezentace Diplomové práce Autor : Libor Tomášek Spoluautoři : Pobucký M., Drábek L. Vedoucí :
Relační databáze.
Vypracoval: Ondřej Dvorský Třída: VIII.A
Metainformační systém založený na XML Autor: Josef Mikloš Vedoucí práce: Ing. Jan Růžička, Ph.D. V/2004.
KIV/ZIS cvičení 6 Tomáš Potužák. Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Stáhnout soubor studenti_dotazy_sql.mdb.
Informatika pro ekonomy II přednáška 10
Dokumentace objektů a zveřejnění funkcí
Číslo šablony: III/2 VY_32_INOVACE_P4_3.8 Tematická oblast: Aplikační software pro práci s informacemi II. Databáze – základy SQL Typ: DUM - kombinovaný.
OSNOVA: a) Úvod do OOPb) Třídy bez metod c) Třídy s metodamid) Konstruktory a destruktory e) Metody constf) Knihovní třídy g) Třídy ve tříděh) Přetížení.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Architektury a techniky DS Cvičení č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
AJAX nejmodernější webová technologie… seminář pro učitele ZŠ a SŠ Mgr. Marek Osuchowski Ostravská univerzita © 2011.
Aplikační role Vít Ochozka. K čemu nám slouží Omezit přístup k databázi AKORD jen prostřednictvím konkrétní aplikace Jiné aplikace – MS excel, MS access,
Ukládání heterogenních dat pomocí rozvolněných objektů Michal Žemlička.
uložené procedury (stored procedures) triggery, sekvence, pohledy, funkce, parametrické dotazy (prepared statements) komplexní agregace a SQL dotazy jiné.
organizační struktury Implementace EOS III na Olomouckém kraji Pro:Krajský rok informatiky 2005 Autor:Jan Kadlec Datum:
Databázové modelování
Databázové systémy Informatika pro ekonomy, př. 18.
KIV/ZIS cvičení 4 Tomáš Potužák. Dotazy - úvod Umožňují pracovat s databází –Získávat specifické informace z tabulky, případně z více tabulek najednou.
Klomfar Petr.  Adresářová služba  specializovaná databáze optimalizovaná pro čtení a vyhledávání.  popisující objekt pomocí atributů. Na rozdíl od.
Správní a dopravně správní evidence - IISSDE RNDr. Jiří Malátek Zástupce ředitele OIVS MV
Obhajoba projektu PA165 Půjčovna stavebních strojů
Microsoft SQL server Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Anopress: nová grafika, nové možnosti Mgr. Daniela Uhrová září 2010.
Základy práce s informačními zdroji pro bc. studenty SPSP Mgr. Dana Mazancová, DiS. Brno, 11. dubna 2013 Masarykova univerzita Fakulta sociálních studií.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 6.
PHP Programy pro tvorbu WWW stránek - 01
Service layer. Service layer – úvod Problém  Vytvoření API aplikace  Odstínění bussiness logiky a transakčního chování od zbytku aplikace  Kam s aplikační.
Lišta nástrojů Standard otevření, uložení a další manipulace se soubory (tj. projekty) načítání dat (mapových vrstev) „žluté plus“ změna měřítka odkaz.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt 1 Část 12.
Lišta nástrojů Standard otevření, uložení a další manipulace se soubory (tj. projekty) načítání dat (mapových vrstev) „žluté plus“ odkaz na další lišty.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 7.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2015.
Perzistence XML dat Kamil Toman
Objektově relační mapování - ORM. Obsah Co je to ORM Využití ORM Dědičnost –jednoduchý příklad –metody jak dědičnost popsat pomocí relační databáze Vztahy.
● Databaze je soubor dat,slouží pro popis reálného světa(např.evidence čkolní knihovny..) ● Relační databaze je databáze založená na relačním modelu.
YOUR LOGO C# Entity Framework. YOUR LOGO  Entity framework nám poskytuje: -Vytváří objektový model na základě databázového schématu -Mapuje tabulky,
A jeho praktická aplikace Štěpán Vacek Univerzita Hradec Králové Liberecké informatické fórum 2010.
Přehled změn na portálu upgrade redakčního systému Marwel, nasazení modulu pro správu souborů a fulltextové vyhledávání
Datové typy MS Access (3). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická škola pro tělesně.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
Vlastnosti souborů Jaroslava Černá.
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
Budování Integrovaného informačního systému Národního památkového ústavu Petr Volfík, NPÚ ÚP
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
Zkušenosti s nasazením J2EE aplikací na AS GlassFish
Přehled změn na portálu
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
Informatika pro ekonomy přednáška 8
Přehled změn na portálu
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - PŘEDNÁŠKA
Nové webové mapové aplikace ČGS RNDr. Vít Štrupl, PhD. Nesuchyně 4. 4
Praktický modul - zadání
Transkript prezentace:

VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 5.

Heslo dne  "The abstractions save us time working, but they don't save us time learning." Joel Spolsky  ions.html ions.html  Zákon netěsných abstrakcí  "Netriviální abstrakce není obvykle schopna absolutně odstínit klienta od abstrahované technologie." SQL má odstiňovat od složitých procedurálních dotazů... WHERE a=b AND b=c... WHERE a=b AND b=c AND a=c – matematicky stejné, avšak na někerých db s významně rychlejší odezvou 2

Program  Diskuse nad domácím úkolem  Aplikace Fotoalbum  Práce s bez-stavovým EJB  Nahrání souboru přes formulář  Programovací vzory Persistent Domain Object (PDO) Data Access Object (DAO) 3

Aplikace Fotoalbum  Enterprise aplikace s jedním webovým (web) a jedním EJB modulem nazvaným ejb  Oba moduly jsou zabaleny do tzv. enterprise archivu – ear ejb.jar web.war album-app.ear 4

Photo - třída pro fotografie  Zapouzdřuje binární data a metadata fotografie  Reprezentuje záznam v perzistentním úložišti  Obsahuje operace pro manipulace s obrázkem  Není pouhým shromaždištěm atributů  Je aktivní (srovnej s Anemic Entity anti-vzorem [Fowler])  Vzor Persistent Domain Object  Reprezentuje data a vazby objektu z doménového modelu (např. databázový model)  Obsahuje metody pro operace nad daty a vazbami  Lze využívat dědičnosti 5

Photo – zdrojový kód 6

AlbumDAO – přístupový objekt  Rozhraní přístupového objektu k fotografiím  Obsahuje tzv. CRUD operace  Create, Read, Update a Delete  Obvykle obsahuje metody pro vyhledávání  V Java EE implementováno jako bez-stavový EJB  Vzor Data Access Object  Odstiňuje (abstrahuje) od technologie pro ukládání  Zlepšuje testovatelnost  V Java EE 5+ může být v jistých případech zastoupen objektem EntityManager (JPA) 7

AlbumDAO – zdrojový kód 8

AlbumDAOBean – dočasná impl.  Dočasná implementace DAO k fotografiím  ukládá a čte fotografie ze souborového systému  umístění adresáře úložiště lze konfigurovat parametrem directory v ejb-jar.xml  Data fotografie jsou uložena v souboru nazvaném podle názvu fotografie  Metadata jsou uložena v properties souboru  Bude nahrazen JPA 2.0 impementací 9

META-INF/ejb-jar.xml  V adresáři album- zaklad/ejb/src/main/resources/META-INF vytvořte soubor ejb-jar.xml  nastavíme zde parametr directory pro AlbumDAOBean 10

AlbumServlet  AlbumServlet slouží jako kontroler albumu  K akcím se rozhoduje podle parametru action v přicházejícím dotazu  Udžuje privátní atribut albumDAO pro komunikaci s perzistentní vrstvou  Odkaz na AlbumDAO je injektován kontejnerem  Servlet ho zpřístupňuje JSP stránkám pomocí atributu v aplikačním kontextu, který nastavuje v metodě init  Servlet je anotován MultipartConfig  zpřístupní metody pro práci s formulářem, který odesílá dotaz složený z více částí (MIME multipart/form-data) 11

AlbumServlet – třída 12

AlbumServlet – metoda doUpload 13

AlbumServlet – načítání parametrů 14

Stránka upload.jsp  Obsahuje formulář pro nahrání souboru  atribut enctype musí být multipart/form-data  Ve spodní části je tabulka s výpisem obsahu albumu  Iteruje se přes seznam fotografií získaný z AlbumDAO přes vlatnost photos (getPhotos)  Na začátku je třeba zavést bean AlbumDAO pomocí  Iterace pomocí tagu c:forEach z knihovny 15

web.xml 16

PhotoServlet  Umožňuje získat data fotografie z aplikace prostřednictvím URL  /photo/  Ve web.xml namapován na /photo/*  REST přístup 17

PhotoServlet - kód 18

Domácí úkol  Upravte stránku upload.jsp tak, aby  poslední sloupec tabulky fotografií obsahoval zmenšenou verzi obrázku.  kliknutím na obrázek se otevřela nová stránka detail.jsp, která zobrazí fotografii v původních rozměrech spolu s údaji o fotografii, tj. název a popis 19