advertisement

Spring 2.5 i JavaEnterprise Edition

50 %
50 %
advertisement
Information about Spring 2.5 i JavaEnterprise Edition
Science-Technology

Published on December 4, 2008

Author: lukasz.budnik

Source: authorstream.com

advertisement

Spring 2.5 z punktu widzenia programisty JavaEnterprise Edition : Spring 2.5 z punktu widzenia programisty JavaEnterprise Edition Łukasz Budnik 20/11/2008 Agenda : Agenda Przegląd nowości Spring 2.5 Budowa przykładowej aplikacji JEE 5.0 2.1. Wykorzystanie JSR 250 do definiowania metod typu callback oraz wstrzykiwania zasobów 2.2. Wykorzystanie Java Persistance API jako warstwy danych JEE 5.0 2.3. Wykorzystanie JSR 220 do definiowania komponentów JEE 5.0 Podsumowanie 1. Przegląd nowości w Spring 2.5 : 1. Przegląd nowości w Spring 2.5 Nowe mechanizmy Spring 2.5 : Nowe mechanizmy Spring 2.5 @Autowire, @Qualifier AspectJ Load time weaving Nowe namespace’y (np. context, jms) Spring TestContext Framework (np. wstrzykiwanie zależności do testów JUnit) Pełne wsparcie JDK 1.6 : Pełne wsparcie JDK 1.6 JDBC 4.0 JMX MXBeans ServiceLoader API JTA 1.1 JAX-WS 2.0 Wsparcie JEE 5.0 : Wsparcie JEE 5.0 Servlet 2.5 JSP 2.1 JSF 1.2 JCA 1.5 częściowa implementacja JSR 250Common Annotations for the Java™ Platform częściowa implementacja JSR 220Enterprise JavaBeans™ 2. Budowa przykładowej aplikacji JEE : 2. Budowa przykładowej aplikacji JEE 2.1. Wykorzystanie JSR 250 : 2.1. Wykorzystanie JSR 250 JSR 250 : JSR 250 <context:component-scan base-package="org.xh.studies.spring" /> @PostConstructprivate void init() { log.info("ctx injected? ==> " + (ctx != null));} @PreDestroyprivate void clean() { log.info("Some clean up here...");} @Resource(name = "helperServiceNewImpl")private HelperService helperService; JSR 250 & JNDI : JSR 250 & JNDI <bean class="org.springframework.context.annotation.CommonAnnotationBeanPostProcessor"> <property name="alwaysUseJndiLookup" value="true" /></bean> @Resource(name = "jdbc/MyDataSource")private DataSource dataSource; 2.2. Wykorzystanie JPA jako warstwy danych : 2.2. Wykorzystanie JPA jako warstwy danych Wsparcie dla JPA : Wsparcie dla JPA @PersistenceContext/@PersistenceUnit - już od Spring 2.0 @Transactional – Spring specific @TransactionAttribute - EJB 3.0, dostępne od Spring 2.5 JPA – AppContext.xml : JPA – AppContext.xml <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" /> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean" /><bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory" /></bean> <context:component-scan base-package="org.xh.studies.spring.jpa" /><tx:annotation-driven /> JPA - Java : JPA - Java @Repositorypublic class UserJPADAOImpl { Log log = LogFactory.getLog(UserJPADAOImpl.class); @PersistenceContext private EntityManager em; @TransactionAttribute(TransactionAttributeType.REQUIRES_NEW) public void create(User user) { em.persist(user); }} 2.3. Wykorzystanie JSR 220 do definiowania komponentów : 2.3. Wykorzystanie JSR 220 do definiowania komponentów JSR 220 wspierane anotacje : JSR 220 wspierane anotacje @Stateless/@Stateful @TransactionAttribute @EJB @Stateless/@Stateful : @Stateless/@Stateful <context:component-scan base-package="org.xh.studies.spring.jpa"> <context:include-filter type="annotation" expression="javax.ejb.Stateless"/></context:component-scan> @Statelesspublic class UserJPADAOImpl implements UserJPADAO { /* kod tutaj */} @EJB : @EJB @Stateless public class XImpl implements X { Log log = LogFactory.getLog(XImpl.class); @EJB private UserJPADAO userJPADAO; @PostConstruct private void init() { log.info("Spring EJB userJPADAO injected successfuly? ==> " + (userJPADAO != null)); } } 3. Podsumowanie : 3. Podsumowanie Wady : Wady Programista nie może używać Springowych anotacji (po przeniesieniu aplikacji na serwer aplikacji nie będą one domyślnie interpretowane) Programista musi pamiętać, że niektóre anotacje działają inaczej na serwerze aplikacji a inaczej gdy aplikacja uruchamiana jest w Springowym kontenetrze (przykład @Resource) Zalety : Zalety Aplikacja napisana z użyciem JSR 250, JPA, JSR 220 może być uruchamiana zarówno na serwerze aplikacji jak i zwykła aplikacja Springowa typu standalone Stworzylismy aplikację w JEE 5.0, wszystko działa poprawnie, ale czujemy, że trochę przesadziliśmy z infrastrukturą i technologią dla tak małej aplikacji (np. zasobożerny serwer aplikacji).Wystarczy jedynie skonfigurować poprawnie Springa i przenieść aplikację na zwykłego TomcataDo ciągnięcia przyczepki wystarczy osobowy samochód, nie potrzebujemy do niej 6 osiowej ciężarówki. W drugą stronę, napisaliśmy aplikację Springową dla której Tomcat to już za mało, potrzebujemy kontenera JEE w oparciu o który możemy przekształcić istniejącą aplikację w prawdziwy rozproszony system Więcej o Spring 2.5 i JEE : Więcej o Spring 2.5 i JEE http://jee-bpel-soa.blogspot.com/2008/11/spring-for-jee-developers-jsr-250.html http://jee-bpel-soa.blogspot.com/2008/11/spring-for-jee-developers-jpa.html http://jee-bpel-soa.blogspot.com/2008/11/spring-for-jee-developers-stateless-ejb.html http://jee-bpel-soa.blogspot.com/ Pytania? : Pytania? Dzięx! : Dzięx!

Add a comment

Related presentations

Related pages

Kurs: Einführung in Java Enterprise Edition - Springest

Dieses Seminar gibt einen Überblick über die Architektur der Java Enterprise Edition ... Spring Einführung in die Progra... € 2.201,50 Kompletter Preis.
Read more

Java Platform, Enterprise Edition – Wikipedia

Java Platform, Enterprise Edition, ... (2.5) Ja (3.0) Ja (3.1) ... Spring (Framework) Literatur ...
Read more

Java Platform, Enterprise Edition (Java EE) | Oracle ...

Java Platform Enterprise Edition (Java EE), ... Java EE is developed using the Java Community Process, with contributions from industry experts, ...
Read more

Home: Java Platform, Enterprise Edition (Java EE) 7 Release 7

Java Platform, Enterprise Edition (Java EE) 7. Home; Tutorials Your First Cup: An Introduction to the Java EE Platform; The Java EE 7 Tutorial; Release ...
Read more

Spring

Spring helps development teams everywhere build simple, portable, fast and flexible JVM-based systems and applications. Build Anything. Write clean ...
Read more

Batch processing and the Java Enterprise Edition (JSR-352 ...

Spring Batch had a lot of influence in the spec and will... Read more. ... Batch processing and the Java Enterprise Edition (JSR-352, JEE7, Spring Batch)
Read more

Java Platform, Enterprise Edition - Wikipedia, the free ...

Java Platform, Enterprise Edition or Java EE is a widely used enterprise computing platform developed under the Java Community Process. The platform ...
Read more

Build a Java Application with Eclipse, Spring, and Oracle ...

... Enterprise Edition. Application Development Framework. Application Express. ... Oracle Enterprise Pack for Eclipse includes Spring Framework 2.5.6 bundles.
Read more

Pro Spring 2. 5 by Jessica Ditt, Anirvan Chakraborty ...

Find great deals for Pro Spring 2. 5 by Jessica Ditt, Anirvan Chakraborty, Aleksa Vukotic, Jan Machacek and Rob Harrop (2008, Paperback, New Edition).
Read more

Kurs: Java EE Einführung in die Java Enterprise Edition ...

Enterprise Architekturen mit Java und der Java Enterprise Edition. In diesem Seminar werden die Architektur und das Design einer komplexen Anwendung ...
Read more