Spring is een open source Java framework voor het ontwikkelen van Java Enterprise applicaties. (Zie ook artikel : Spring introductie). Het is ontstaan vanuit de doelstelling om de ontwikkeling van Java Enterprise applicaties (J2EE, JEE) te vereenvoudigen. Verschillende onderwerpen daaruit heb ik in de praktijk uitgewerkt in een reeks voorbeeld applicaties. Het zijn eenvoudige uitwerkingen om zoveel mogelijk het accent te leggen op de Spring concepten zelf.
De applicatie code is beschikbaar op GitHub : https://github.com/vanderschoot/dierentuin
De voorbeelden zijn gebaseerd op een dierentuin model bestaande uit de objecten Hok en Aquarium. In Hok bevinden zich dier objecten Hond en Poes. In Aquarium bevinden zich objecten Forel en Plant. Belangrijkste is dat het gaat om simpele modellen en voorbeelden, met onderlinge relaties tussen de objecten. De voorbeelden worden uitgewerkt qua Spring concepten waaronder Dependency Injection (voorbeeld 1 t/m4) , Data Access en Transacties met JPA/Hibernate en HSQLDB database (voorbeeld 5) en het gebruik van Spring en Mockito testvoorzieningen (alle voorbeelden).
De voorbeelden maken onderdeel uit van een reeks artikelen over Spring:
- Deel 1 : Spring Overzicht
- Deel 2: Spring Dependency Injection (DI)
- Deel 3: Spring Dependency Injection Voorbeelden
- Deel 4: Spring Data Access en Transactie Management
- Deel 5: Spring voorbeeld JPA / Hibernate DAO met Generics
- Deel 6: Spring Test
- Deel 7: Testen met Spring en Mockito
- Deel 8 : Spring MVC
- Deel 9: Spring Security
- Deel 10: Spring Mail
In deze artikelen worden de voorbeelden genummerd, waarbij elk voorbeeldnummer overeenkomt met een source package in het project op GitHub:
- Voorbeeld 1 : /src/main/java/org/biz/dierentuin
- Voorbeeld 2 : /src/main/java/org/biz/dierentuin2
- Voorbeeld 3 : /src/main/java/org/biz/dierentuin3
- Voorbeeld 4 : /src/main/java/org/biz/dierentuin4
- Voorbeeld 5 : /src/main/java/org/biz/dierentuin5
Voorbeeld 1 t/m 4 zijn Java applicaties en JUnit testcases en worden met name toegelicht in het artikel Spring Dependency Injection Voorbeelden.
Voorbeeld 5 betreft JPA/Hibernate/HSQLDB, zonder applicatie, en wordt gebruikt vanuit verschillende testcases. Dit voorbeeld wordt met name toegelicht in artikel Spring voorbeeld JPA / Hibernate DAO met Generics.
Alle voorbeelden kunnen standalone worden gebruikt. Er is dus geen Server/Container nodig zoals TomCat, JBoss of soortgelijk.
Behalve de dierentuin voorbeelden zijn ook in de reeks employees demo applicaties een tweetal Spring demo apps beschikbaar. Deze demo apps bevatten ook voorbeelden van het gebruik van de Spring MVC, Security en Mail modules. Het betreft qua Spring MVC een voorbeeld met resp JSP en JSF schermen:
- employeesJSPSpring: een JSP/Spring Webapp met HyperSQL Database (o.b.v. Tomcat)
- employeesJSFHSpring: een JSF/Spring Webapp met HyperSQL Database (o.b.v. Tomcat)