2014. tavaszi félév: Korszerű adatbázisok (2+2) (IPM-08irKAEG/1)

 

(Utolsó módosítás 2014. április 3.)

 

A kurzussal kapcsolatos levelezést, anyagok küldését a 2014korszeru@gmail.com címre kérem.

Tematika:

 

Big Data, számítási felhők, virtualizáció, NoSQL adatbázis-kezelők, gráfadatbázis-kezelők, szemantikus web, SPARQL,

XML adatbázisok, XML sémák (DTD, XSD), XML lekérdező (XPath, XQery), transzformáló nyelvek (XSLT), XML kezelése Oracle-ben, XML indexelés

Szemantikus technológiák Oracle-ben, komplex fejlesztői környezetek, Oracle ADF, többrétegű adatbázis-kezelő alkalmazások

 

FONTOS: Az előadás és gyakorlat nem különül el, a keddi és a szerdai órán is lesz elmélet és gépes gyakorlat is, ezért a megértéshez, teljesítéshez, folyamatos haladáshoz elengedhetetlen, hogy a keddi és a szerdai órán is részt vegyetek!

Tematika:

 

Big Data, számítási felhők, virtualizáció, NoSQL adatbázis-kezelők, gráfadatbázis-kezelők, szemantikus web, SPARQL,

XML adatbázisok, XML sémák (DTD, XSD), XML lekérdező (XPath, XQery), transzformáló nyelvek (XSLT), XML kezelése Oracle-ben,. XML indexelés

Szemantikus technológiák Oracle-ben, komplex fejlesztői környezetek, Oracle ADF, többrétegű adatbázis-kezelő alkalmazások, multimédia adatbázisok

 

Tervezett heti bontás (heti két alkalom):

1. hét: Virtualizáció, Oracle VM és felhőmegoldások (elmélet és gyakorlat)

2. hét: Virtualizáció, Oracle VM és felhőmegoldások, Oracle NoSQL, MongoDB (elmélet és gyakorlat)

3. hét: Oracle NoSQL, MongoDB (elmélet és gyakorlat) + a beadandó jdeveloper feladat kiírása

4. hét: Osztott feldolgozás, Hadoop, MapReduce (elmélet és gyakorlat)

5. hét: Osztott feldolgozás, Hadoop, MapReduce (elmélet és gyakorlat)

6. hét: Big Data, közösségi hálók, CasJobs, Oracle CasJobs (elmélet és gyakorlat)

7. hét: Gráfadatbázisok, Neo4J (elmélet és gyakorlat)

8. hét: XML adatbázisok, XML sémák (DTD, XSD), XML lekérdező (XPath, XQery) nyelvek, Oracle megoldások (elmélet és gyakorlat)

9. hét: XML transzformáló nyelvek (XSLT), XML indexelés, Oracle megoldások (elmélet és gyakorlat)

10. hét: Szemantikus web, SPARQL (elmélet és gyakorlat)

11. hét: Többrétegű adatbázis-alkalmazások készítése oracle jdeveloper segítségével (elmélet és gyakorlat) + a beadandó jdeveloper feladat bemutatása

12. hét: Többrétegű adatbázis-alkalmazások készítése oracle jdeveloper segítségével (elmélet és gyakorlat) + a beadandó jdeveloper feladat bemutatása

13. hét: Többrétegű adatbázis-alkalmazások készítése oracle jdeveloper segítségével (elmélet és gyakorlat) + a beadandó jdeveloper feladat bemutatása

 

 

Vizsgajegy:

 

2 tanulmány elkészítése az utolsó hétig. 2 cikket kell választani az alábbi konferenciákról, folyóiratokból. Ebből egyik XML témájú kötelezően, a másik a tematikában szereplő bármelyik másik témájú lehet.

 

Adatbázisokkal foglalkozó legrangosabb

évente megrendezett konferenciák 2013-ban, (lehet korábbiból is, de 5 évnél nem régebbi):

folyóiratok:

 

A konferenciákon elhangzott cikkek keresése egyetemi IP címről:

ACM

Google tudós

ScienceDirect

vagy a szerző oldaláról is gyakran letölthető.

 

TANULMÁNY:

§  2 cikk (egyik XML témájú, a másik nem, de a kurzus témájához kapcsolódó) kiválasztása 2014. március 1. éjfélig és 2 db szerző.rar (ahol szerző a cikk egyik szerzőjének neve, és a cikk pdf-ben, tömörítve) formában elküldése a 2014korszeru@gmail.com email címre.

§  A választott cikk alapján egy-két napon belül visszajelzek, hogy alkalmas-e a cikk a tanulmányírásra

§  a cikk 2008 és 2013 között jelent meg a fenti konferenciákon vagy folyóiratban

§  a cikk letölthető nyomtatható pdf vagy ps formában

§  a tanulmány összefoglalja a cikkben leírtakat

§  a tanulmány szerkezete:

o   Címe: Saját nevetek és NEPTUN kódotok: A téma megnevezése, amiről a cikk szól

o   Rövid összefoglalás (absztrakt: kb. 10 mondat)

o   Bevezetés (a vizsgált problémák közérthető megfogalmazása: kb. 2-3 oldal)

o   Kapcsolódó munkák (a hivatkozásban milyen eredményeket értek el eddig: kb.0,5-1 oldal)

o   Alapfogalmak (definíciók, tulajdonságok, módszerek, példák: kb. 4-5 oldal)

o   Eredmények (megoldások, állítások, példák, futási eredmények: kb. 4-5 oldal)

o   További kutatás terv (a cikkek alapján mit lehetne még vizsgálni, saját ötletek a folytatásra: 0.5-1 oldal, olyan formában, ahogy a szakdolgozat témabejelentőjében kell megadni)

o   Irodalomjegyzék (0.5-1 oldal)

§  a tanulmány magyar nyelvű

§  az ábrák, képletek az eredeti cikkből bevághatók, ezek angol feliratait nem muszáj magyarra fordítani

§  a tanulmány szerző_hun.doc, vagy szerző_hun.pdf  nevű legyen (ahol szerző a cikk egyik szerzője)

§  a két tanulmányt a vizsgaidőszak kezdetéig a 2014korszeru@gmail.com címre kell elküldeni.

 

 

Gyakorlati jegy:

 

Három részből adódik össze:

§  1 többrétegű adatbázis-kezelési alkalmazás készítése jdeveloper környezettel és bemutatása a félév utolsó három hetében. 50%

http://people.inf.elte.hu/vzoli/Korszeru_Adatb/Eredmenyek/KAB_Jdev_v2.xlsx

§  hetente kiadott egyszerű feladatok elkészítése, beküldése vagy bemutatása egy rövid határidővel (kb. hetente) 40%

§  órákon kiadott feladatmegoldások bemutatása 10%

 

 

1. nap: Virtualizáció, felhő

01-korszeru-20140211.pptx

 

 

2. nap: VM Guest-ek létrehozása Oracle Assembly-k felhasználásával az IaaS portálon keresztül.

korszeru_adatbazisok-20140212.txt

 

3. nap: Adatbázis tesztkörnyezet kialakítása

korszeru-20140218.pdf

 

4. nap: Rest apihoz hivatkozások:

http://en.wikipedia.org/wiki/REST_API

http://docs.oracle.com/cd/E24628_01/doc.121/e28814/dbaas_api.htm

https://addons.mozilla.org/hu/firefox/addon/restclient/

 

Minta blueprint: 00_create_dbresource.yml

A beadandóhoz kellhet, de már fent van a szerveren: cloud-blueprints-1907295.zip

 

5. nap: MongoDB: Mongodb20140225.pdf

 

6. nap: MongoDB feladatok

 

Az órán használt dokumentációk:

Find - http://docs.mongodb.org/manual/reference/method/db.collection.find/

FindOne - http://docs.mongodb.org/manual/reference/method/db.collection.findOne/

Aggregation - http://docs.mongodb.org/manual/aggregation/

Aggregation Pipeline - http://docs.mongodb.org/manual/core/aggregation-pipeline/

Pipeline operators: http://docs.mongodb.org/manual/reference/operator/aggregation/#aggregation-pipeline-operator-reference

Operators - http://docs.mongodb.org/manual/reference/operator/

Query operators - http://docs.mongodb.org/manual/reference/operator/query/

Használt adatbázis lelőhelye: http://docs.mongodb.org/manual/tutorial/aggregation-zip-code-data-set/ http://media.mongodb.org/zips.json

 

 

Az órai feladatok megoldása:

http://docs.mongodb.org/manual/tutorial/aggregation-zip-code-data-set/

 

Kezdetek:

###adatbázis importálás:

mongoimport -d adatbazisnev -c zips <zips.json

###mongo indítás:

mongo adatbázisnév

 

Házi:

1. Melyek azok az államok, amelyekben 100-nál kevesebb város van?

ellenőrzés: ahol 50-nél kevesebb város van: Washington DC, Delaver DE

 

2. Melyik államban található az a város, amelyikhez a legtöbb postai körzet tartozik?

ellenőrzés: 2. legtöbb Los Angeles

 

3. Melyek azok a városnevek, amelyek 24 államban találhatóak meg?

ellenőrzés: pontosan 22 államban van Arlington és Madison

 

külső file betöltése:

mongo adatbazisnev <g.js

 

7. nap: Big Data, Hadoop: Big Data.pptm

8. nap: Hadoop gyakorlatok: Hadoop Gyakorlat 1.pptx Gyakorlat1.zip

9. nap: Hadoop gyakorlatok: Hadoop Gyakorlat 2.pptx Gyakorlat2.zip

10. nap: Hadoop házi feladat: Hadoop Hazi.pptx

 

11-12. nap: Virtuális obszervatórium, elmélet és feladatok: VO.pptx

 

13-14. napi: Gráfadatbázisok, Neo4J: Neo4j.pptx Feladatok, megoldások: neo.zip

 

14-15. nap: XML, DTD, XPath, XQuery, XSLT: elmélet és feladatok: xml_dtd_xpath_xquery.ppt 

 

Online Xpath kiértékelő: http://www.mizar.dk/XPath/

Minta xmlhttp://people.inf.elte.hu/kiss/14kor/kolcsonzesek.xml

 

Fejezzük ki Xpath lekérdezésekkel:

1.      Adjuk meg a 'Szep Holnap' című CD árát!

2.      Adjuk meg azoknak a CD-knek a címeit, amelyeknek ára legalább 3000!

3.      Adjuk meg azoknak a nevét, akik kölcsönöztek Zorán CD-t!

4.      Adjuk meg azok nevét, akik kölcsönöztek könyvet!

5.      Adjuk meg azok nevét, akik kölcsönöztek könyvet vagy CD-t!

6.      Kik azok, akik 2 könyvet kölcsönöztek?

7.      Kik azok, akik csak 1 féle dolgot kölcsönöztek?

8.      Adjuk meg azoknak a CD-knek az előadóit, amelyeket nem Gipsz Jakab kölcsönzött!

9.      Adjuk meg azokat a csomópontokat, amelyeknek nincs attribútuma!

 

Fejezzük ki XQuery lekérdezésekkel:

                     Online Xquery kiértékelő: http://www.semwebtech.org/xquery-demo/

Minta xmlhttp://people.inf.elte.hu/kiss/14kor/kolcsonzesek.xml

 

1. Az előző feladatok XQery-ben.

2. Hány Zoran CD-t kölcsönöztek?

3. Mennyi a kölcsönzött könyvek összes ára?

4. Mennyi a Zoran CD-k kölcsönzések összára?        

5. Ki kölcsönözte a legtöbb CD-t?

6. Ki kölcsönözte a legtöbb Zoran CD-t?

7. Melyik DVD a legdrágább és ki kölcsönözte ezt ki?

8. Kik kölcsönöztek legalább egy megegyező előadójú CD-t?

 

További segédlet: XML, XPATH, XSLT angol oktató anyagok példákkal

XML fogalmak magyarul: http://www.zvon.org/xxl/XMLTutorial/General_hun/book.html

Teljes szintaxis: http://www.w3.org/XML/

 

Egy XML: cdcatalog.xml

Egy XSLT: cdcatalog.xsl

Az XSLT alkalmazása az XML-re: cdcatalog_with_xsl.xml

 

XSLT bevezetés: xslt.ppt (Bilicki Vilmos előadásai: http://www.inf.u-szeged.hu/~bilickiv/fpt_2005_1/ 2. előadás:2.ppt másik változatban: XML-XSD-XSLT.ppt )

XSLT oktatóanyag (magyarul, példákkal): http://www.zvon.org/xxl/XSLTutorial/Output_hun/contents.html

XSLT oktatóanyag (angolul, példákkal): http://www.w3schools.com/xsl/default.asp

Extrém XSLT alkalmazások (nem minden link működik már): http://incrementaldevelopment.com/xsltrick/

 

 

Online XSLT kiértékelő: http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog

 

Feladatok (XSLT-vel oldjuk meg, a CD katalógust használva (a stíluslapokat mentsük el)):

 

1.         A CD katalógust listázzuk úgy ki, hogy az énekes, lemezcím és ár jelenjen meg.

2.         Csak az 1990 utáni Cd-k összes adatát listázzuk ki. (Az év fejléc piros legyen, a többi kék.)

3.         Csak az USA lemezek összes adatát listázzuk ki, csökkenő időrendi sorrendben.

4.         Az előző feladat táblázata alatt jelenjen meg, hogy hány darab USA lemez van és mennyi az összáruk.

5.         A Cd katalógusból készítsünk olyan XML fájlt, hogy minden címkét cseréljünk le a magyar megfelelőjével (title = cím, stb.).

6.         A Cd katalógusból készítsünk olyan XML fájlt, amely annyiban más, hogy CD helyett DVD szerepel minden címkében, ahol a CD szerepelt és a Price elem hiányzik.

7.        Írassuk ki a prímszámokat 50-ig. (n-ig).

 

 

15-16. nap: Oracle XML kezelése, indexelése: elmélet és feladatok

 

XML kezelés Oracle-ben: http://people.inf.elte.hu/kiss/14kor/Oracle%20XML.ppt

XML indexelési technikák (strukturális indexek): http://people.inf.elte.hu/kiss/14kor/Tudomanyos.ppt

 

Xml adatok betöltése: xml_load1.txt

Hozzunk létre egy pelda(id,xm,xst,res) táblát, ahol id egész értékű, xm és xst XML típusú oszlop, a res pedig szöveget (HTML kódot) fog majd tárolni.

az id=1 sorba, az xm oszlopba töltsük be a cdcatalog.xml-t,

az xst oszlopába a cdcatalog.xsl-t,

a res oszlopba pedig az cdcatalog_with_xsl.xml –t.

          (Segítség a transzformáláshoz: http://docs.oracle.com/cd/E11882_01/appdev.112/e10492/xdb08tra.htm#ADXDB4721  )

 

Oracle-ben hajtsuk végre a következő lekérdezéseket:

 

Oracle lekérdezések:

1. A 10-nél drágább CD-k címét és árát kérdezzük le!

2. Az EU lemezek előadóit és címét kérdezzük le!

3. Mennyi a UK lemezek összesített ára?

4. Hány lemez van a katalógusban?

5. Melyek a B-vel kezdődő zenészek lemezcímei?

 

Oracle módosítások (minden eredményt egy új id-hez tartozó sor xm oszlopába mentsük):

6. Utolsó lemeznek vigyük be az Omega (HU), 1978-as Time Robber lemezét, melynek ára 1.5, kiadó a Pepita!

7. Töröljük az össze Rod Stewart lemezt!

8. Tegyük vissza a törölt Rod Stewart lemezeket oda, ahonnét töröltük őket!

9. Módosítsuk az Omega lemezének árát 1.5-ről 2-re!

10. Vegyünk fel egy új attribútumot az Omega és Gary Moore esetében az artist elemben, az attribútum neve legyen genre (műfaj), az értéke ’rock’!

11. Készítsünk egy olyan XSLT-t, amely a ’rock’ lemezeket listázza ki: Műfaj: rock felirat alatt két oszlopos táblázat, CD címe és ára, táblázat alatt összegezve az ár!

12. Tegyük be az XSLT-t az 10. feladat megoldásához létrehozott rekordba.

13. Alkalmazzuk a 12. feladatban létrehozott XSLT-t a rekordban szereplő XML-re és az eredményt az utolsó sorba tegyük.

 

Oracle Xquery használata: http://docs.oracle.com/cd/E11882_01/appdev.112/e23094/xdb_xquery.htm#ADXDB5088

 

Oracle XQuery feladatok: A táblát egészítsük ki egy xq oszloppal és ide tegyük a az xquery lekérdezéseket. Amire alkalmazzuk, az xm oszlopban legyen, a lekérdezés eredménye a res oszlopban.

14. A 3. feladatot oldjuk meg Xquery-vel!

15. Hány UK lemez van?

16. Állítsuk elő az ország, átlagár táblázatot tetszőleges XML formában.

17. Melyik országban legnagyobb az átlagár?

 

XML betöltése Oracle táblába (Az XML-t előtte kanonikus formává kell alakítani XSLT-vel átalakítani - ROWSET, ROW.

Minden címke csupa nagybetű legyen!): http://people.inf.elte.hu/kiss/14kor/o55xml.html

DBMS_XMLSTORE : http://stanford.edu/dept/itss/docs/oracle/10g/appdev.101/b10790/xdb_dbmstore.htm#CACIDHFI

 

Feladatok:

1. Írjunk egy employees.xsl XSLT-t, amely az  http://people.inf.elte.hu/kiss/14kor/Employees.xml -t kanonikus alakra hozza.

2. A pelda(id,xm,xst,res) táblába vigyük be az Employees.xml-t és az employees XSLT-t,

majd a res mezőbe generáljuk le az eredményt (a kanonikus alakot).

3. Készítsünk egy employees táblát a megfelelő oszlopokkal és DBMS_XMLSTORE segítségével töltsük fel.

4. A pelda táblában hozzunk létre egy új sort XSLT segítségével, amelynek xm oszlopa csak az officer-eket tartalmazza,

    de 1 évvel idősebbek, az xst és res oszlop a kanonikus alakra hozó XSLT, illetve az eredmény.

5. Ezzel a sorral és DBMS_XMLSTORE segítségével módosítsuk az employees táblát.

6. Hozzunk létre egy sort a példa táblában, amelynek xm oszlopa a 25 éveseket tartalmazza, az xst és res oszlop értelme változatlan.

7. Ezzel a sorral és DBMS_XMLSTORE segítségével töröljük a 25 éveseket employees táblából.

 

Ismételjük át a SYS_XMLGEN(kif [,fmt]) függvény és a SYS_XMLAGG(kif [,fmt]) függvény,

illetve a DBMS_XMLGEN csomag használatát. http://people.inf.elte.hu/kiss/14kor/Oracle%20XML.ppt

 

8. Az employees táblából generáljuk le az Employees.xml-t és az employees_kanonikus.xml-t.

9. Az employees táblából generáljuk le az Employees_with_attrib.xml-t, amelyben minden Employee elemnek van egy id attribútuma,

melynek értéke a dolgozó sorszáma a kor szerinti növekvő sorrendben.

 

Az XSD XML séma és használata Oracle-ben.

http://people.inf.elte.hu/kiss/14kor/XML-3.pdf (Tarcsi Ádám előadása)

Xsd példák (oktató anyag): http://www.zvon.org/xxl/XMLSchemaTutorial/Output/series.html

XML Schema Tutorial - Oktató anyag angolul: http://www.w3schools.com/schema/default.asp

 

Oracle XML Schema doksi (letöltve e10492.pdf ) következő fejezetei:

Sémák regisztrálásahttp://download.oracle.com/docs/cd/E11882_01/appdev.112/e10492/xdb05sto.htm

Sémák generálásahttp://docs.oracle.com/cd/E11882_01/appdev.112/e10492/xdb06stt.htm#i1032141

Xml validálása a séma szerint: http://docs.oracle.com/cd/E11882_01/appdev.112/e10492/xdb08tra.htm#g1030361


Feladatok:

0. Tervezzünk egy cdcatalog.dtd sémát az cdcatalog.xml fájlhoz.

1. Tervezzünk egy cdcatalog.xsd XSD sémát az cdcatalog.xml fájlhoz.

2. Vigyük be a cdcatalog.xsd és cdcatalog.xml fájlokat a pelda(id,xm,xst,res) Oracle tábla egy sorába, az xm és a res oszlopba.

3. Validáljuk az Oracle segítségével a tervezett sémát.

4. Generáljunk az Oracle segítségével a cdcatalog-ból egy xsd sémát és tegyük be egy új sorba a pelda(id,xm,xst,res) táblába.

 

További XML témakörök:

XML normálformák, funkcionális függőségek

Libkin.ppt BP10majus.pdf  XMLFD.pdf XMLAQTR.pdf

 

Egy diplomamunka XML tranzakció-kezelésből: XMLtranzakcio.pdf


 

17-18. nap: Szemantkus Web, Sparql: elmélet és feladatok

           

            SemWeb_SWP.ppt RDF+SPARQL+Ontologiak.pdf SWPGyakFeladatok.doc

           

            Hasznos linkek:

 

Semweb Portalhttp://eszakigrid107.inf.elte.hu:7001/SemWeb-war

Hivatalos RDF leiráshttp://www.w3.org/TR/2014/NOTE-rdf11-primer-20140225

Hivatalos SPARQL leiráshttp://www.w3.org/TR/2013/REC-sparql11-query-20130321

SPARQL tutorial: http://www.cambridgesemantics.com/semantic-university/sparql-by-example

SPARQL demohttp://librdf.org/query

DBpedia SPARQL végpont: http://dbpedia.org/sparql

 

19-20. nap: Többrétegű alkalmazások készítése jdeveloper környezetben (I)

 

Alkalmazásfejlesztési keretrendszerek, jdeveloper általános bevezetés, tutorial, egyszerű adatkezelő alkalmazás készítése

           

            Az órán önállóan hajtsuk végre valamelyik segédletben leírt fejlesztési lépéseket és mutassuk be a működő rendszert.

 

            CsehPeter_oktatoanyag.pdf JdevTutorCseriTamas.pdf

 

            Jdeveloper hibák és megoldások: Jdeveloper FAQ.txt

 

Grafikus elemek használata jdeveloper környezetben (grafikonok, térképek, Master Detail kapcsolatok)

 

Oktatóanyag: http://people.inf.elte.hu/kiss/14kor/gant_chart_pivot_table.htm

           Oracle Spatial International Geocoder: http://elocation.oracle.com/geocoder/

 

            Feladatok:

                        Az alábbi tweet táblába

 

tweet( tweet_id, user_id, lon, lat, retweet_count, text, lang)

 

1. lehessen bevinni rekordokat, (előbb természetesen hozzátok létre a táblát)

2. lehessen szűrni a rekordokat bármelyik oszlopa alapján

(tehát például az angol nyelvű (lang='EN') és 4-szer retweetelt (retweet_count=4) feltételű rekordokat akarjuk látni)

3. felül jelenjen meg akövetkező szöveg:

Tweeter Manager 2014         

Készítette: /* ide a neptunkódotok kerüljön */

           4. Bővítsük az alkalmazást úgy, hogy grafikonon lehessen látni az angol, magyar és német nyelvű tweetek számát!

                        (Vigyünk be az alkalmazással új rekordokat és ellenőrizzük, hogy frissült-e a grafikon!)

5. (Haladó változat) Lehessen menüből kiválasztani azokat a nyelveket az előforduló nyelvekből, amelyekhez tartozó tweetek számát grafikonon szeretnénk látni!

6. Bővítsük az alkalmazást úgy, hogy

a) tegyünk térképen egy jelet minden tweethez tartozó pozícióra,

b) arányos legyen a jel mérete a tweet-hez tartozó retweet értékkel,

c) a jelre állva mutassa a tweet szövegét!

           7. Hozzunk létre egy follower (from_id, to_id) követőket tartalmazó táblát. Bővítsük úgy az alkalmazást, hogy lehessen keresni a táblában.

           8. Bővítsük úgy az alkalmazást, hogy a follower tábla bármelyik rekordjára állva lehessen látni a to_id felhasználó tweet rekordjait!

           9. Bővítsük úgy az alkalmazást, hogy lehessen törölni, módosítani a follower táblában! Ellenőrizzük, hogy frissül-e az eredmény!

 

21-22. nap:

 

            Oracle multimédia kezelése: Oracle_multimedia.ppt (bővebben: Oracle_multimedia2.ppt )

Speciális DICOM típus: http://hu.wikipedia.org/wiki/Digital_Imaging_and_Communications_in_Medicine

                        és kezelése: intermedia_java_qs.pdf

Oracle multimedia Users guide (fogalmak, típusok, függvények): OracleMultimediaDocUserGuide.pdf

Oracle multimedia Reference (metódusok szintaxisa, képfeldolgozási függvények):

Release 1: OracleMultimediaDoc.pdf

                        Release 2: OracleMultimediaDoc 2.pdf (HTML-ben: http://oracle.su/docs/11g/appdev.112/e10776/toc.htm)

http://docs.oracle.com/cd/E11882_01/appdev.112/e10777/toc.htm

 

 

 

Képkezelő alkalmazás készítése jdeveloper segítségével: http://youtu.be/_KYquJwYFGE

 

 

Feladatok:

1. Készítsünk egy profile (user_id, photo) táblát és töltsük fel legalább 4 felhasználóval és 5 képpel.

2  Haladóknak: írjunk alkalmazást, amellyel rekordbevitelkor választani lehet a könyvtárban található képek közül, hogy melyik kép legyen a második oszlopban,

3. Az alkalmazást bővítsük úgy, hogy a follower tábla böngészésekor az azonosítókkal együtt a fényképek is látszanak.

4. Bővítsük az alkalmazást, hogy a megjelenő kép méretét (magasság, szélesség) is megadja.

5. Írjunk egy scriptet, ami a profile össze fotóját tükrözi.

6. Haladóknak: építsük be az alkalmazásba a tükrözési funkciót, vagy más képtranszformálást, például kicsinyítést, szürkévé alakítást.

7. A tükrözött képeket exportáljuk ki.

8. Haladóknak: az exportálást építsük be az alkalmazásba.

 

23-24. nap:

 

            A csoportok bemutatják az elkészült alkalmazásaikat.