26.10. 2006
Práce s databází v Javě, rychlokurz JDBC/JNDI za 10 minut
Je až s podivem, že jsem zatím v Javě neměl potřebu používat relační databázi pro čtení/zápis dat. Nebudu zde řešit, proč, ale spíš fakt, že v práci nastala chvíle, kdy jsem musel z ničeho nic umět uložit data do databáze a znalosti nebyly. Jak jsem to vyřešil? Chcete zkusit podobný studijní postup a ponořit se do JDBC / JNDI jako já? Pak čtetě následující tutorial!
První dokument, do kterého jsem se letmo začetl, byl Getting started with JDBC tutorial, kde najdete stručně a jasně popsané vše, co potřebujete vědět! Pro jistotu jsem načetl i příslušný javadoc pro tyto API a nakonec stáhl ovladač databáze, kterou jsem potřeboval zpřístupnit – v mém případě MySQL 5.0. Mou výhodou bylo, že připojení na ni bylo definované v kontejneru Glassfish, takže jsem si jen vygooglil kód na jeho získání přes JNDI a byl za vodou. Protože jsem potřeboval data jen vkládat (a to velké množství opakujících se dat!), bylo nejvhodnější použít objekt java.sql.PreparedStatement. Pak už jsem si jen rozpomenul na SQL a bylo to! Chcete i kód?
Získání připojení přes JNDI:
InitialContext context = new InitialContext();
DataSource dataSource = (DataSource)context.lookup("$JMENO_PRIPOJENI$");
Connection connection = dataSource.getConnection();
Následně vytvoříme PreparedStatement, který umožňuje napsat návrh dotazu s parametry, které můžeme doplňovat za skutečné hodnoty a po provedení dotazu doplnit zase hodnoty jiné.
PreparedStatement stmt =
connection.prepareStatement(
"INSERT INTO system_constants (key, value) VALUES (?, ?)");
Pak již jen můžete doplnit parametry a vykonat příkaz.
// navazani hodnot na parametry SQL dotazu
stmt.setString(1, "$JMENO_KONSTANTY$");
stmt.setString(2, "$HODNOTA_KONSTANTY$");
// vykona dotaz
stmt.execute();
// odstrani hodnoty dosazene za parametry
stmt.clearParameters();
Místo setString() lze použít setBoolean(), setLong() a různé další metody podle konkrétního datového typu sloupce. A to je celá věda :-) Myslel jsem, že to bude složitější – samozřejmě, že vím, jak si to okořenit s in–line načítáním ovladače databáze přes konstrukci Class.forName(), ale toho jsem byl ušetřen. Určitěch bych se měl na JDBC podívat více, ale na to teď není čas, protože se budu opět hrabat ve webové vrstvě a jediné, co uvidím z logiky, budou @Remote() rozhraní různých EJB. Nevadí.
Výprava do kuchyňských potřeb
Když mám hlad, jsem nevrlý. Ne, že bych neměl, co k jídlu, ale letos, co bydlím na koleji Hvězda, jsem spíš měl problém, že nebylo kde jídlo uskladnit (ne, ledničku na pokoji fakt nemám) a taky, jak jídlo připravit. Zatím jsem proto večery trávil v Akademickém klubu, KFC™, bageterii, atp. Ten druhý problém jsem se jednoho večera rozhodl cestou do TESCA na Andělu definitivně vyřešit. V oddělení kuchyňských potřeb jsem si připadal jak ve „španělské vesnici“, ale nakonec mé trápení jedna rychlovarná konvice, pánev, nůž, prkýnko na krájení a pár dalších maličkostí vyřešily. Nebudu povídat, že plány byly velkolepé, ale nějak jsem pozapomněl sehnat „HOW TO“ … ano, myslím recepty! První večeři tedy pojistilo pečivo a konzerva fazolí s párkem, ale už teď ve volných chvílích pácham intenzivní brain–storming na téma, co bude dobrého k večeři?!? Pokud se něco povede, určitě se pochlubím – znáte mě ;-)
A takto vypada první mnou připravená večeře:

24.10. 2006
A co vlastně znamená "Binario Uno"?
Ano, to jsem v předchozím příspěvku nevysvětlil. Binario Uno znamená v italštině „první nástupiště“ — tento nápis jsem zahlédl v italské hraniční stanici Brennero nedaleko Innsbrucku. V tomto případě jde o novou sekci, která trochu lépe shrnuje mé spisovatelské ambice na poli železničním. Chtěl jsem původně psát různé postřehy a cestopisy na samostatný eZine, který by se takto jmenoval, ale když já nacpu vlaky úplně všude, nevidím důvod, proč prostě nevytvořit pro takové články zde zvláštní sekci. Úvod by jsme měli, co bude dál, to nevím, to závisí na fantazii při prohledávání mapy, dostupnosti jízdních dokladů a hlavně na volném čase!
Ladies and gentlemen, next stop is Bad Schandau
… ozvalo se z amplionu a následovalo loučení palubního personálu ČD doprovázejícího vlak EC 176 dříve zvaného „Porta Bohemica“ podle údolí, kudy protéká Labe do sousedního Německa. V současné době tudy nejen teče Labe, ale skrz Prahu, Ústí nad Labem a Děčín vede také I. evropský tranzitní koridor, který dále pokračuje do Drážďan, Berlína. Ale vůbec první zastávkou na Německém území je od Hřenska ne tak vzdálené městečko Bad Schandau. Zde se nachází přechodová stanice. A proč o tom mluvím? Minulý týden jsem využil krásné počasí a zajel se do údolí Porta Bohemica podívat – a co hlavně? Nezapomněl jsem fotoaparát, abych ulovil pár atraktivních železničních snímků.
Bad Schandau, česky Žandov: město ležící na Labi nedaleko české státní hranice na území národního parku Saského Švýcarska se zhruba 3 tis. obyvateli. Důležitý komunikační uzel díky Labi a také železničnímu koridoru, dříve průmyslové centrum, dnes centrum lázeňství. Město se skládá ze čtyř částí – Ostrau, Postelwitz, Krippen a Schmilka. Ve čtvrti Ostrau naleznete zajímavost – 50 metrů vysoký osobní výtah spojující tuto čtvrť s centrum, který nechal postavit zámožný hoteliér Rudolf Sendig, místní mecenáš. Z Vrchu se skýtá nádherný výhled na okolí.
Königstein: sousedí s Bad Schandau, ve městě funguje přívoz přes Labe, ale největší dominantou tohoto městečka s asi 2800 obyvateli je na skále vybudovaná vojenská pevnost přezdívaná „Saská bastila“ – byla používána jako věznice.
Kurort Rathen obývá necelých 500 obyvatel. Nachází se cca. 5 km od Königsteinu, ale již tak těsně nesousedí s Labem. Na protějším břehu se nachází typická pískovcové skaliska, jedná se o lázeňské centrum. Hlavní raritou je přírodní venkovní divadlo.
Ale dost bylo zeměpisu! Popravdě, já si moc kulturních památek neprohlédl. Chtěl jsem hlavně fotit železniční provoz, který je v těchto místech velmi hustý – v půlhodinovém taktu osobní vlaky S–Bahn (linka S1), ve dvouhodinovém taktu vlaky EuroCity a mezitím velké množství lokomotivních a nákladních vlaků. Z Prahy jsem přes Bad Schandau dojel až do Kurort Rathen, odkud jsem došel na první místo u tratě, kde se dalo fotit a pak pokračoval postupně až se mi „zkazilo slunce“ a já došel do Königsteinu, odkud jsem jel přes Bad Schandau zpět do Prahy. Celý den mi zpestřovaly nad hlavou kroužící německé úderné letouny PANAVIA Tornado a občas po Labi plul i nějaký ten parník (— já celou dobu tvrdím, že nejkrásnější fotka odtud je právě jeden z výletních parníků). Pokud hledáte místo na výlet, s náštěvou Saského Švýcarska určitě neprohloupíte!
23.10. 2006
Pražský model OSN reloaded – Studentský summit začíná
Během druhého týdne tohoto semestru pro mě začala stěžejní práce na novém větším a lepším projektu Asociace pro Mezinárodní Otázky, který převzal to nejlepší z Modelu OSN, přidal dvě nové myšlenky a umožnil tak začátek celého Pražského studentského summitu. Je to samozřejmě práce celého týmu – hodiny plánování, sepsání návrhů, příprava a hlavně se to musí nějak zpropagovat! No a sestavení propagačního/informačního webu jsem měl na starosti já. Sice šlo jen o předělání spousty textů do XHTML (grafiku dělal profesionální grafik!), ale i tak to dalo zabrat. A celou tu dobu jsem se kochal novou, úžasnou grafikou … www.studentsummit.cz je připraven k Vaší návštěvě!.
15.10. 2006
Jsem ctiletý plus jedna
Před rokem jsem přestal být náctiletý a další rok je za mnou. Je mi 21 a je mi fajn. Včera jsme to s rodinkou doma oslavili. Je tady i moje milá Svitavanka. Odpoledne opět mizím do … no s Katkou do Svitav. Už se těšíme na Kendíka.
Co jsem za ten 20. rok dokázal? Přežil ve škole (a to někdy doslova). Trhnul 50.000ící kilometr na palubě vlaku. Složil zkoušku ze softwarového inženýrství a vypotil málem i duši. Získal certifikát Sun Certified Programmer for the Java 2 Platform, Standard Edition 5.0. V práci se naučil mnoho nového a dostal ještě větší chuť umět vše, co jde v Javě a IT obecně umět. Poprvé fotil kvalitně železnici a dokonce navštívil železniční ráj–Rakousko. A co je asi nejlepší, stále jsme s Katkou DVA! Už se těším na ten 21. rok. Hezkou neděli.
13.10. 2006
Tutorial XOM, skvělé objektové technologie pro práci s XML
V poslední době si cenín jednoduchá a flexibilní řešení – proto používám DocBook, Relax NG, Operu … a proto jsem si oblíbil knihovnu XOM pro práci s XML dokumenty. Líbí se mi její jednoduchá architektura a základní koncept, že element obsahuje elementy, nikoliv seznam elementů. Proto jsem 100% zanevřel na „dokonce standard“ Document Object Model, se kterým tvůrci, podle mě, trochu přestřelili. Návrh je sice nezávislý na platformě, ale poměrně zmatečný. Pokud se v DOM ztrácíte, chcete zkusit něco mnohem jednoduššího, chcete, aby celé vaše rozhraní používalo pouze Elementy, Atributy a Dokumenty, čtěte následující tutorial s ukázkami!
12.10. 2006
Multifunkční prohlížeč W3C Amaya jako poznámkový blok
Před dvěma týdny jsem zde doporučoval aplikace typu wiki pro vedení poznámek. Dnes jsem na disku našel software, který jsem také testoval – Amaya 9.52. V Grazu na meetingu projektu K–Space jsem zahlédl, že Raphaël Troncy si psal veškeré poznámky v XHTML a psal je pomocí prohlížeče/editoru Amaya. Když si nainstalujete poslední verzi, poznáte mnoho příjemných změn. Prohlížeč již delší dobu umí XHTML, CSS, SVG, XLink, ale podpora těchto technologií se velmi zlepšila. Nově jsou implementovány záložky. Co je příjemné, editor poskytuje jednoduché WYSIWYG prostředí produkující validní XHTML. Jedinou vadou na kráse je nepodporování některých českých znaků, třeba ů, ž. Jinak, pokud máte čas, vřele doporučuju aplikaci k vyzkoušení. Přiložený snímek zobrazuje editaci strány a chybějící české znaky.
11.10. 2006
Otazníky nad ontologií FOAF
Potěšil mě článek, který napsal Dan Brickley – FOAF Questions – který shrnuje snad všechny nejasnosti a problémy, které jsou spojené se současným stavem této ontologie. I když je vysoce použitelná a pro mnohé poskytuje lákavou funkčnost, obsahuje věci nesystémové a neprofesionální. Stejně tak stav její normativní specifikace je také „divoký“.
O to více jsem byl potěšen, že Dan chce udělat ve specifikaci pořádek a hlavně dále pokračovat ve vývoji. Jen tak dál! Poslal jsem autorovi některé mé komentáře, tak uvidíme, jestli budou v další verzi zahrnuty a jak se vůbec vše vyvine …
05.10. 2006
Týdenní report – Druhý týden na Hvězdě
Je čtvrtek, večer a já si pochutnávám na zapečených amerických bramborách v naší školní restauraci Akademický klub. Skvělé místo, příjemné prostředí, luxusní výhled na Prahu a ceny téměř lidové. Nechci zde prozrazovat do detailů vše, co jsem za tento týden dělal, ale …
Dnes jsem měl takový studijně–odpočinkový den. Od 9 přednášku Peníze, banky, finanční trhy a teď odpoledne cvičení z angličtiny s naším lektorem, Australanem Mr. Huntem :-) V obou se probírala funkce peněž a docela mě to zajímalo, rozhodně více, než v minulém semestru pokažené základy ekonomie. Na snídani jsem se dnes stavil cestou do školy do pekařství Paneria – najdete ji naproti východu z metra A, stanice Staroměstská.
Alespoň jsem si dnes odpočinul a nemyslel celou dobu na HTML tagy a věčně záludné PHP. Dokončuji v těchto dnech jeden projekt pro školu a taky pácháme něco inovátorského v AMO. Je to spousta rutinní práce, ale výsledek bude jistě zajímavý. Nechte se překvapit, reklama bude v pravý čas následovat!
A co v práci? V té jsem byl v úterý a středu. Tentokrát bylo na řadě programování a kupodivu jsem nenarážel na problémy – jen jednou mě musel kolega „nakopnout“ s vstupními/výstupními proudy. Jinak jsem si užil zábavu s mým oblíbeným frameworkem XOM – po menší peripeti s DOM a varováním Filemona jsem se raději vyvaroval vážnějších žaludečních potíží a udělal dobře!
Málem bych zapomněl! V úterý jsem s Lukim stylově oslavil 50.000 km ujetých a zaznamenaných na palubě vlaku. Tentokrát to byla Hungaria. To snad ani není možné!
A co bude po večeři? Jestli se Aristo neztratí a najde tu „putiku“, kde teď sedím, tak vyrazíme na Václavské náměstí do čajovny. Sice už není Hočiminova limonáda, ale určitě si něco dobrého vybereme. And that's all folks!
