Java one sf 2013
-
Upload
arshal-ameen -
Category
Technology
-
view
483 -
download
5
Transcript of Java one sf 2013
JavaOne San Francisco 2013
Arshal
Wednesday, October 2, 13
2
Agenda
1. Introduction
2. Key Points
3. Details
5. Summary
4. Looking forward
Wednesday, October 2, 13
3
IntroductionWhat
Where
Wednesday, October 2, 13
Key Points
1. DukePad
2. Java SE 8: Lambda Programming
3. JEE 7
4. Java ME 8
5. Project Sumatra
6. Project Avatar
Wednesday, October 2, 13
Road map
Wednesday, October 2, 13
Java 8 and Beyond
Java 81. Lambda – JSR 3352. New Date & Time API – JSR 3103. Project Nashorn: JavaScript Service layer4. Security Enhancements
Beyond Java 81. Modular Platform2. Unified Type System3. Language Interoperability4. Memory-efficient data structure
Wednesday, October 2, 13
JEE 7
Wednesday, October 2, 13
JEE5Ease of
Development
JEE6Light weight
JEE7Productivity and HTML5
JEE 7
Wednesday, October 2, 13
9
Details
1.1
1.11.0
2.1
3.2
2.0
3.1
1.1
2.2 2.0
1.0
1.7
Deprecation
1.2
Wednesday, October 2, 13
10
CDI 1.1 : The Aquarium1. Aligning the JSF component model/scoping to CDI
2. Decoupling declarative transactions from the EJB component model through the JTA 1.2
@Transactional CDI interceptor.
3. Modernizing the JMS 2 API utilizing CDI
4. Support for CDI in Bean Validation 1.1
5. Allow inspection of event metadata
6. Support decorators on built in beans
7. Class exclusion filters to beans.xml to prevent scanning of classes and packages
8. Easy access to non-contextual instances of beans
9. @Vetoed annotation allowing easy programmatic disablement of classes
10. @WithAnnotations as a way of improving extension loading performance
Details
Wednesday, October 2, 13
11
Bean Validation 1.1(JSR 349)1. Improved semantic readability
2. Method-level validation (validation of parameters or return values)
3. Dependency injection for Bean Validation components
4. Integration with Context and Dependency Injection (CDI)
5. Error message interpolation using EL expressions
Details
Wednesday, October 2, 13
12
Interceptors(JSR318)1. @AroundConstructor
2. @PreDestroy
3. New lifecycle callback
Client call => Interceptor instance creation and Injection of needed class (except target class) =>
InvocationContext.proceed() creates target Instance => AroundConstruct => Injection is complete
=> PostConstruct()
4. Ordering using
@Priority (lowest number are called first)
@Interceptors({InterceptorA.class, InterceptorB.class}) left to right order
Details
Wednesday, October 2, 13
13
Concurrency 1.01. Simple and advanced design patterns
2. Default ManagedExecutorService, custom executer can be defined in web.xml
3. ManagedScheduleExecutor: Submit delayed/periodic tasks
4. ManagedThreadFactory: can use user threads in java EE
5. Dynamic proxy: can create runnable context proxies
Details
Wednesday, October 2, 13
14
JPA 2.11. Convertors: custom conversion between DB and object types
2. Criteria update/delete : bulk update/delete through criteria API
3. Runtime creation of named queries
4. Injectable EntityListeners
5. Unsynchronized persistence contexts
6. DDL generation - automatic table, index(@Index) and schema generation.
7. Entity Graphs - allow partial or specified fetching or merging of objects.
8. JPQL/Criteria enhancements - arithmetic sub-queries, generic database functions, join ON
clause, TREAT option.
9. Stored Procedures: NamedStoredProcedure queries and parameters
Details
Wednesday, October 2, 13
15
JTA 1.2 (Project Kenai)1. @Transactional(value=Transactional.txType.Required, rollbackOn={SQLException.class,
JMSException.class}, dontRollbackOn=SQLWarning.class)
2. @TransactionScoped: lifecycle limited to transaction
3. Can make normal POJOs transactional using this annotation
Details
Wednesday, October 2, 13
16
EJB 3.2
1. Asynchronous session bean(@Asynchronous)
2. Non-persistent EJB Timer service
3. Lifecyle callback methods (@PostConstruct, @PreDestroy, @PostActivate, @PrePassivate)
Details
Wednesday, October 2, 13
17
JMS 2.0
1. Easier Resource Configuration
2. JMS context API: simplified
3. JMS Resource Definition Annotations
Details
Wednesday, October 2, 13
18
Servlet 3.1
1. Non-blocking I/O - checks read/write availability b4 actually doing it.
2. Protocol Upgrade (HttpUpgradeHandler) : init , destroy
3. Improved security : denies all non-secure accesses
Details
Wednesday, October 2, 13
19
WebSocket 1.1
1. Full-duplex bi-directional communication over TCP
2. Annotated server endpoint
3. Annotated client endpoint (@javax.websocket.ClientEndPoint)
4. Encoder/Decoder classes
Details
Wednesday, October 2, 13
20
EL 3.0
1.stand-alone environment support: useful for batch
2.ELProcessor, new operators,
3.lambda support
JSF 2.2
1.Faces Flow; @FlowScoped
2. Resource Library Contract
3. Pass through attributes (p:type="email" -> type="email")
4. h:inputFile for file upload (Part.class)
5. Security improvements: CSRF, type checking
Details
Wednesday, October 2, 13
21
JAX-RS 2.0
1.New API to consume rest serives
2.async client and server supported(Future.class)
3.Message filter ClientRequestFilter,ClientResponseFilter
4.Entity Interceptors - intercept inbound/outbound stream
JSONP 1.0
1. json builder, JsonObject.class and JsonParser
Details
Wednesday, October 2, 13
22
Batch processing
1. chunk-style or batchlets
2. Partition: split a job among multiple cores
3. Creating workflows
Details
Wednesday, October 2, 13
Looking forward1. CDI beans instead of current FacesBeans
2. Migration to JSF 2.2
3. Possible use batchlet in batch processing
4. Use of transaction scope on existing pojos
5. Use of flow scope and many more...
Wednesday, October 2, 13
Wednesday, October 2, 13
25
Thank you
Wednesday, October 2, 13