2007-11-21

Struts2 + Spring + JPA + Hibernate + SiteMesh

Ja, ovanstående ramverk och produkter har jag de senaste dagarna pusslat ihop till något som faktiskt kan liknas vid en fungerande webbapplikation. Ok, jag utgick från den utmärkta guiden hos Apache, men ändå! Till saken hör att mina tidigare erfarenheter begränsade sig till Struts1, Hibernate och SiteMesh så det var en hel del nytt.

Som vanligt innebar Struts2 en hög inlärningströskel (trots lång erfarenhet av Struts1 sedan tidigare), och dokumentationen är minst sagt spretig - både till innehåll och struktur. Framförallt saknas best practices. Många olika tips och lösningar som inte är kompatibla med varandra blandas i en salig röra.

Det mest kraftfulla i sviten tycker jag är de annotations som definierats i JPA (Java Persistence API) och som låter oss mappa ett javaobjekt (POJO) till en databas. Jag har som sagt tidigare arbetat mycket med Hibernate men har då arbetat med hbm.xml-filer vilket både kan bli krångligt och oöverskådligt. Annotations och dokumentation så nära koden som möjligt är enligt mig det enda som håller i längden. Andra alternativ tenderar att växa sig omöjliga att underhålla.

Spring är nog det ramverk som jag har minst inblick i. Har ännu inte lärt mig behärska tänket med IoC (Inverse of Control) fullt ut, men det kommer väl...

No comments: