Rád bych vás všechny pozval na workshop na téma iBatis 3 konaný 3. března 2010 od 18 hodin v rámci CZ JUG setkání (pozor tato praktická setkání se konají v Národní technické knihovně v Praze – Dejvicích – viz. mapka dole). iBatis je framework pro mapování dat uložených v relační databázi na Java objekty. Už po několik let je zajímavou alternativkou k ORM frameworkům postaveným na JPA (jehož typickým představitelem je Hibernate). Mottem iBatisu je zjednodušit vývojářům práci s databází a přitom zůstat tak jednoduchý, jak jen to je možné. Právě jednoduchostí a nízkoúrovňovým přístupem k databázi si získal celou řadu vývojářů a v řadě případů poráží i daleko silnější frameworky.
Na workshopu si budete moci sami vyzkoušet práci s iBatisem 3, který právě spatřil světlo světa. Kromě novinek v iBatisu bude k vyzkoušení jeho integrace do Spring Frameworku 3.1. Obě dvě záležitosti ještě nemají své stabilní verze, takže budou k vyzkoušení opravdu žhavé novinky. V průběhu bude vyhlášena soutěž o jednu licenci vývojového prostředí IntelliJ Idea 9 Ultimate Edition, kterou věnovala společnost JetBrains.
Zjednodušený program workshopu:
- agenda a základní popis iBatis
- zprovoznění iBatis na projektu – ukázka integrace do Spring 3.X
- základní použití: CRUD
- podpora immutable objektů
- práce se sekvencemi
- asociace a kolekce
- lazy loading (N+1 problém)
- join selecty
- dynamické SQL
- použití anotací
- diskriminátory a typehandlery
Kde: Národní technická knihovna, Praha – Dejvice
Místnost: Ballingův sál
Kdy: 3. března 2010, od 18:00 do 19:30
Přednášející: Jan Novotný (FG Forrest)
Příprava na workshop
Na sále je k dispozici volné WiFi připojení, nicméně doporučuji si předem stáhnout materiály z adresy:
- GIT klient: git://github.com/novoj/iBatisWorkShop.git
- HTTP: http://github.com/novoj/iBatisWorkShop/tree/master (v menu odkaz Download sources)
Dále si, pokud možno předem, zprovozněte projekt ve svém oblíbeném IDE. Pokud používáte Apache Maven mělo by vám stačit importovat projekt do IDE a měli byste mít hotovo. V opačném případě naleznete všechny potřebné knihovny v podadresáři LIB, zdrojové kódy nastavte na adresáře src/main/java a src/main/resources, adresáře pro testy na adresáře src/test/java a src/test/resources.
Pokud vám všechny testy z package cz.novoj.ibatis.init projdou, jste připraveni a budu se těšit na Vaši účast.



Nazdar, workshop me hodne zajima, ale bohuzel nemuzu se zucastnit. Bude z teto akce porizeno video?
Dik
Nejsem si jistý – spíš bych řekl, že ne. Workskop bych chtěl ještě opakovat někdy v květnu / červnu pro studeny Univerzity Hradec Králové (dám vědět minimálně přes twitter přesný termín). Nicméně, cvičení jsou ke stažení již teď, řešení doplním cca týden po workskopu.
Workshopy bohuzel nejsou nahravany.
Stáhnul jsem si projekt a importoval do Eclipse jako Maven projekt,
ale mvn package vypíše problém u jmxtools a jmxri.
[DEBUG] Connecting to repository: ‘java.net’ with url: ‘https://maven-repository.dev.java.net/nonav/repository'.
Downloading: https://maven-repository.dev.java.net/nonav/repository/com.sun.jdmk/poms/jmxtools-1.2.1.pom
[DEBUG] attempting to create parent directories for destination: jmxtools-1.2.1.pom.tmp
357b downloaded (jmxtools-1.2.1.pom)
[WARNING] *** CHECKSUM FAILED – Checksum failed on download: local = ‘b662aa01d49d8a571aa79f67a1d4a92a7d9c6359′; remote = ‘<!DOCTYPE' – RETRYING
V lokální repository jsou soubory .jar a .pom, ale jejich obsah je HTML s chybou 301:
Moved Permanently
The document has moved here.
Dělám něco špatně nebo je chyba v tom, že artefakt není v pořádku v centrální repository? Zkoušel jsem dát do pomu repository s navrhovaným URL, ale chyba přetrvávala. Nakonec jsem to vyřešil tak, že jsem .jar soubory přepsal v repository těmi z adresáře lib ze zipu pro workshop. Ale zajímalo by mě, zda je to správně, koukám, že na nich závisí jen log4j. Testy v packagi init mi pak prošly (ty ostatní ne, ale předpokládám, že je budeme na workshopu „opravovat“).
Díky!
V trunku je to již v pom.xml excludováno. Kdy sis to z GitHubu stahoval?
Včera v 16:18. Ale i dnes ráno stahuji stejný zip. Stahoval jsem to jako zip přes Download source. V zipu je stejný pom jako na http://github.com/novoj/iBatisWorkShop/blob/master/pom.xml – log4j obsahuje exclusion jen na mail a jms.
Opravdu, tyhle jsem nevyjmul. Pom jsem doupravil. Teď už by je to chtít nemělo.
Ahoj, ten problém s jmxtools jsem včera řešil taky. Narazil jsem na tohle: http://jira.codehaus.org/browse/MEV-649?page=com.atlassian.streams.streams-jira-plugin%3Aactivity-stream-issue-tab. Šel jsem cestou 3 a zafungovalo to ok:
Solution (3) – the best one. Use version log4j 2.1.14 instead. It seems to be OK.
Díky za včerejší workshop, ať zarytý .netista, tak jsem byl zvědav, jak iBatis v Javě pokročil a na co se mohu těšit nového v iBatis.NET.
Co mě mrzí, že mi unikl začátek, přeci jen se rozkoukat v jave, byt v pekne pripravenem projektu bylo při sledování výkladu složitější.
Přesto díky, moc pěkně připraveno a určitě je to inspirací, jak také vést UG v .NETu.
Jarda
Na jaky e-mail mame posilat resene testy?
Diky
Bohuzel jsem si taky nezapsal email na jaky mame posilat resene testy.
Řešení možné odeslat na libovolný z:
novotnaci zavináč gmail tečka com
novotny zavináč fg tečka cz
Díky za všechny ohlasy.