JDK 6.0 (Mustang) s přibalenou databází
JDK pro nadcházející verzi 6.0 (kódové označení Mustang) bude obsahovat přibalenou nativní databázi Java DB. Sun za tímto krokem vidí možnost jak mezi vývojáře dostat malou embedded databázi s podporou specifikace JDBC 4.0. Podle prvních reakcí nebyl tento krok komunitou přijat s velkým nadšením.
Java DB je nativní Java databáze založena na Apache Derby s podporou SQL, JDBC, Java EE, Java ME CDC — konkurenční přístup, trigry, Java stored procedury. Velikost databáze je 2MB a databáze může běžet jak v klasickém režimu klient server tak v takzvaném režimu embedded (je programově spuštěna v rámci vlastní aplikace — tj. sdílí stejnou JVM).
Filozofická otázka, která přišla s tímto krokem Sunu zní, Měla by být databáze součástí JDK?. I přesto, že se to komunitě moc nezajídá, zacož může především samotný Sun neboť selhal na komunikační úrovni, určitě databáze do JDK patří. Poznámka na margo komunity, jde o způsob jakým Sun začlenění databáze provedl.
Databáze by měla být součástí JDK ze dvou důvodu. Usnadňuje počáteční vývoj JDBC pro nováčky a nabízí defaultní RDBMS úložiště pro aplikace, které se rozhodnou uchovávat data. Z hlediska nasazení nemusí být nutně tato databáze použita jako produkční, ale svoje místo najde například při testování či jiných servisních operacích.
Nevýhodou začlenění do JDK je svázání s jednou verzí databáze. Naštěstí není Java DB nijak provázaná s JRE takže nemůže dojít k problémům s aktualizací jako v případě Xercesu. V případě, že se rozhodnete databází s JDK používat, mělo by stačit přidat jar na classpath.
Sun tímto krokem rozvířil otázku jakým způsobem koncipovat skladbu JDK. Dnes je situace taková, že Sun může prakticky z čehokoliv učinit součást JDK. Na snadě je tedy jakási modularice JDK. Už dnes je součástí jednoho z distribučních balíčků JDK IDE NetBeans.
Mě osobně by nebyla cizí myšlenka jakéhosi Full JDK kompletu tj. všeho nutného pro vývoj v ME, SE a EE.

Základem by bylo JRE. Nad ním by byly stand alone komponenty nutné pro vývoj ve specifické oblasti například aplikační server pro J2EE a nebo emulátor mobilních telefonů pro ME. Součástí by bylo i IDE, které by krom obyčjneých nástrojů nabízelo například i profiler a nebo databázový prohlížeč. A nesmíme zapomenout na dokumentaci, příklady a návody.
Celý Full JDK bundle by se měl vtěsnat na jedno CD a měl by umožňovat plnohodnotnou službu i v offline módu. Samozřejmostí by byla i automatická aktualizace. Byl by pro Vás Full JDK bundle přínosem a nebo jste se současným JDK konceptem spokojeni?
Zdroje
- Francois Orsini’s Blog Java DB is now part of Sun’s JDK
- JavaLobby.com Sun Bundles Java DB with Mustang b88
Související články
Související epizody CZ Podcastu
- #3 · Java 6 SE, Vývoj webových aplikací
Dagi a Filemon o novinkách v Javě 6 a webových frameworcích.
- #1 · Vývojová prostředí v Javě
První díl CZ Podcastu se věnuje vývojovým prostředím pro Javu.