Upload
info-artdecode
View
25
Download
1
Embed Size (px)
Citation preview
Arquitectura
WAS 7.0 y JEE 5
Agenda
●Un poco de historia●Aplicaciones Web utilizando JEE 5●Arquitectura●Pensando en Java 8 y JEE 7
Evolución de JEE
●Aplicaciones desarrolladas en Java 5+●WebSphere 7.0●JEE 5 (Java Enterprise Edition)
Presente
●Generics●Annotations●Autoboxing●Enumerations●Variable Arguments●Static Imports
Presente: JAVA 5
●EJB 3.0 ●Java Server Faces●Web Services (jax-ws)●Rest Services (jax-rs)●Java Persistence API●Dependency Injection
Presente: JEE 5
●JEE busca simplificar J2EE mediante la utilización de Annotations
●La definición de xml es opcional●Los componentes soportan DI
Presente: JEE 5
@Stateless public class StockBean implements Stockpublic double getQuote(String symbol){
return 100.33;}
}
JEE 5 Ejemplos
@Stateless public class StockBean{
@TransactionAttribute(TransactionAttributeType.REQUIRESNEW)public double getQuote(String symbol){
return 100.33;}
}
@Entity(access=FIELD)@Table(name="PRODUCT")public class Product implements Serializable {
@Id@Column(name="SKU")Integer sku;
@Column(name="DESC")String description;
@Column(name="PRICE")Integer cost;
@WebService public interface StockQuote { public float getQuote(String sym);}
@Stateless public class QuoteBean implements StockQuote {public float getQuote(String sym) { ... }
}
● Full JEE 5 Compliant y JAVA 5+● Comunidad Open Source● Proyectos que utilicen JEE o puedan integrarse● Seguridad● Meta Framework
Facil, simple y desarrollo rápido.
Arquitectura
Las definición de una arquitectura debe contemplar el crecimiento y la manutención de la solución en el tiempo. Una arquitectura no es algo estático. Incluso debe soportar el agregado de componentes que actualmente no fueron diseñados o desarrollados.
●Proyectos Open Source:●Cxf●REST Easy●Spring 3. Spring Mvc●MyBatis●Owasp - ESAPI
Arquitectura
● CDI 1.1 (JSR 346)● Bean Validation 1.1 (JSR 349)● Interceptors 1.2 (JSR 318)● Concurrency utilities 1.0 (JSR 236)● JPA 2.1 (JSR 338)● JTA 1.2 (JSR 907)● EJB 3.2 (JSR 345)● JMS 2.0 (JSR 343)● Servlet 3.1 (JSR 340)● Web Socket 1.0 (JSR 356)● Expression Language 3.0 (JSR 341)● JSF 2.2 (JSR 344)● JAX-RS 2.0 (JSR 339)● JSON-P 1.0 (JSR 353)
Java 8 y JEE 7
● Lambda expressions● Streams Api● Parallel operations● New date / time APIs● Javascript + JAVA
Gracias!
Emilio AlberdiTwitter @emilioalberdi