De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

In samenwerking met HowITsDone Spring as legacy Hoe innovatie legacy kan worden.

Verwante presentaties


Presentatie over: "In samenwerking met HowITsDone Spring as legacy Hoe innovatie legacy kan worden."— Transcript van de presentatie:

1 in samenwerking met HowITsDone Spring as legacy Hoe innovatie legacy kan worden

2 Geschiedenis JEE J2EE: container managed security en persistence, global transaction management API’s niet schoon; container managed functionaliteit lekt door in de applicatiecode (bijv. EJB1 en 2) Missende functionaliteit: SOAP stack, UI webframework, Dependency Injection

3 Spring Maak applicatiecode schoon o Alles runtime excepties! o Plain Old Java Objecten! o Dependency Injection! Ongewenst gevolg: heterogene ontwikkel API’s en frameworks o Voorbeelden:  DUO Java 5 straat: Spring + Axis + JEE JAXB + JEE Message Driven Beans + JEE Servlet/ JSF + JEE JPA  Rotterdam IOO: Spring + Spring WS + JEE Servlet + Wicket + Hibernate

4 Filosofisch uitstapje Is dit soort framework heterogeniteit bij software ontwikkeling een pluspunt, minpunt of noodzakelijk kwaad? Roept U maar… In mijn visie is het bijna altijd een minpunt. Wel af en toe handig om een log schip van koers te laten veranderen. Maar geen doel op zich. We hebben sowieso al dotNet, PHP en dan ook nog meerdere Java benaderingen? Nee dank u.

5 Eeuwige lente? Voor degenen die het met mij eens zijn: Hadden we gewoon Spring moeten gebruiken voor alles? Roept U maar… In mijn visie alleen als Sun geen JEE5 en 6 had gespecificeerd; overigens gebruikt Spring wel JEE servlet…

6 Na de lente volgt de zomer Sun (ja okee nu Oracle) is geen log schip; ze hebben in JEE5/6 nagenoeg alle Spring oplossingen ingebouwd o CDI is zelfs uitgebreider dan Spring’s Dependency Injection o Validation Beans (business layer -> web layer integratie) o Persistency en transaction: JPA en JTA o JSF 2 (samen met primefaces ;-) o SOAP: JAX-WS, JAXB o RESTful webservices: JAX-RS o sort of outjection (SEAM)

7 EJB-lite Stateless, stateful, and singleton session beans Local EJB interfaces or no interfaces Interceptors Container-managed and bean-managed transactions Declarative and programmatic security Embeddable API

8 Web profile EJB-lite Servlet 3.0, JSF 2.0, JSP 2.2, EL 1.2, JSTL 1.2 CDI 1.0 JPA 2.0, JTA 1.1 Bean Validation 1.0 Dus niet: JMS, JAX-WS, JAXB, JAX-RS JavaMail

9 JEE 6 voorbeelden Een paar voorbeelden van annotaties waarmee je een POJO om kan zetten in een JEE object: o EJB: @stateless of @singleton o EJB aanroep: @EJB o SOAP endpoint @WebService o JMS endpoint @MessageDriven

10 JEE 6 voorbeelden (2) CDI @Stateful @SessionScoped public class Login { @Inject Credentials credentials; @Inject EntityManager userDatabase; private User user; @TransactionAttribute(REQUIRES_NEW) @RolesAllowed("guest") public void login() {... } public void logout() { user = null; } public boolean isLoggedIn() { return user!=null; } @RolesAllowed("user") @Produces @LoggedIn User getCurrentUser() {... } }

11 JEE 6 voorbeelden (3) CDI @Target( { TYPE, METHOD, PARAMETER, FIELD }) @Retention(RUNTIME) @Documented @Qualifier public @interface LoggedIn {...} ----------------------------------------- @Model public class Credentials { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }

12 Innovatie of conservatief EJB’s bah? Dat is oud nieuws. Ga met je tijd mee aub. Je hebt nu zelfs de optie EJB lite; EJB’s die draaien in een WAR zonder aparte EJB container (Tomcat, Jetty) Conclusie: een paar jaar stilstaan en je bent legacy in Java land ;-) http://www.oracle.com/technetwork/articles/javaee/javaee6overview-full- 149950.pdfhttp://wikis.sun.com/display/GlassFish/Java+EE+6+Annotation+Referenc e


Download ppt "In samenwerking met HowITsDone Spring as legacy Hoe innovatie legacy kan worden."

Verwante presentaties


Ads door Google