V tomto seriálu si ukážeme, jak rozchodit webový systém naprosto od nuly, za použití těchto technologií: Java, Maven, Spring, Struts2, Hibernate, Oracle (nebo MySQL) a JQuery ve vývojovém prostředí Eclipse a serveru Tomcat. Od tohoto seriálu můžete očekávat detailní a srozumitelný návod, jak začít vývoj webové aplikace u vás na lokálním počítači. Výsledkem bude fungující webový systém postavený na MVC architektuře, který bude demonstrovat základní použití všech zmíněných technologií.

Seriál Webová aplikace v Javě od A do Z

V tomto seriálu si ukážeme, jak rozchodit webový systém naprosto od nuly, za použití těchto technologií: Java, Maven, Spring, Struts2, Hibernate, Oracle (nebo MySQL) a JQuery ve vývojovém prostředí Eclipse a serveru Tomcat.

Důvody vzniku tohoto seriálu

Start-up jakéhokoliv projektu je náročnější, než by se mohlo zdát a nikdo vás za to většinou neocení. Spíš se dočkáte vět typu: „A to jste jeden formulář dělali dva týdny?“ nebo: „Chcete mi říct, že jsem zaplatil týden vývoje za to, že aplikace umí vypsat větu Hello world!???“ nebo si sami frustrovaně řeknete něco jako: „Ach jo, už se s tím týden drbu a pořád mi to vyhazuje nějaké výjímky, které nejdou odstranit ani podle všech možných návodů na internetu. Já už bych chtěl konečně začít psát vlastní aplikaci.“

Počáteční konfigurací projektu a napsání základních obecných funkcí je práce, kterou neděláte každý den, takže se snadno zapomínají i věci, které jste si pamatovali a to vůbec nemluvím o věcech, které jste ani nikdy nevěděli :-) Samotnému se mi stalo, když jsem měnil práci, že jsem odešel z projektu, který měl za sebou mnoho let vývoje a slušné vývojářské zázemí a měl jsem najednou začít vyvíjet projekt zcela nový, takříkajíc od píky. Nemusí to ale být jen zmíněná změna práce, chcete si například rozjet nějaký soukromý projekt doma. V těchto případech zjistíte, kolik věcí již berete jako samozřejmost a to nemluvím jen o konfiguracích Springu, Hibernatu apod. Muvím i o značném počtu nezbytných utilitních funkcí a objektů, které jste si zvykli používat téměř jako vestavěné funkce jazyka Java popř. Javascriptu a najdenou se divíte, co to s tím Eclipsem zase je, že vám tyto metody nenabízí v kontextové nápovědě :-)

Tento seriál má pomoci výrazně zrychlit tuto, dovolím si říct, neradostnou a nudnou část vývoje a mimo to také poskytnout návod na použití zmiňovaných technologií v podobě komplexního praktického příkladu.

Systém, který vznikne jako výsledný produkt tohoto seriálu, bude umět:

  • Registrovat nového uživatele za pomocí obsáhlejšího registračního formuláře včetně klient-side a server-side validací
  • Vypsat seznam uživatelů v pěkné tabulce umožňující rychlé řazení a filtrování dle nejrůznějších hledisek
  • Přihlásit uživatele do systému, provedení základní autentizace a autorizace a rozlišit 3 typy oprávnění – anonymní uživatel, registrovaný uživatel, admin a super admin.
  • Možnost editace a mazání existujících uživatelů adminem + možnost přiřazení administrátor­ského práva
  • Správa požadavků AJAXem

To bude obnášet z vývojářského hlediska především:

  • Systém bude postaven na MVC architektuře
  • Aplikace se bude pomocí Mavenu buildovat přímo v Eclipse a umožní ji spustit ve webovém prohlížeči
  • Rozjetí databáze
  • CRUD (Create, Read, Update, Delete, tj čtení) v rámci celé MVC architektury

To obnáší zvládnout jednotlivé dílčí kroky, které zde nyní vyjmenuji. Předpokládám, že se budou víceméně krýt obsahově i chronologicky s jednotlivými díly tohoto seriálu:

  1. Stáhnutí a konfigurace vývojového prostředí Eclipse, založení nového projektu, download potřebných pluginů (maven plugin).
  2. Download externích knihoven Spring, Hibernate a Struts2 a jejich integrace do našeho systému.
  3. Konfigurace Spring a Struts2 a „Hello World!“.
  4. Konfigurace Spring a Hibernate a „Hello World!“ v kompletní MVC architektuře.
  5. Vytvoření DB tabulky Uživatelé a CRUD nad touto tabulkou za pomocí základního webového formuláře – tzn. vytvoření, výpis, aktualizace a smazání uživatele.
  6. Přidání dalších DB tabulek pro komplexnější ukládání informací o uživateli a tedy i správná konfigurace Hibernatu pro DB vazby typu 1:n a m:n.
  7. Vytvoření moderního formuláře (klient-side validace, vyhledávací comboboxy, ajaxové odesílání formuláře apod.) pomocí JQuery a jeho pluginů.
  8. Vytvoření moderní tabulky (především inteligentní řazení a filtrování) pomocí JQuery a jeho pluginů.
  9. Přihlášení uživatele pomocí Struts2 interceptoru a jeho autorizace a autentizace.
  10. Základní testování pomocí JUnit testů a automatické webové testování Selenium.

První díl seriálu se plánuji na začátek listopadu 2012.

Komentáře

Zatím žádné komentáře.

Přidat komentář

  • Můžete použít Texy syntaxi, HTML není povoleno
  • Například: *kurzíva*, **tučně**, "text odkazu":adresa
 

Autor článku Lukáš Knápek

Od roku 2008 věnuji víceméně dobrovolně třetinu života vyvíjení webových aplikací, především prostřednictvím těchto jazyků a nástrojů: Java, Struts2, Hibernate, Spring, Maven, Dojo, JQuery, Tomcat a Eclipse. A to vše s vírou, že to bude užitečné nejen k vydělávání peněz pro potřeby Lukáše Knápka :-)