SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
New Features and
Migration Strategy
Neil Brown, 04/2013
- Brown Bag, Part 1 -
Java Standard Edition
(JSE) - Today
JSE, Today
● J6 end-of-life'd by Oracle 02-2013, but...
...there's life after J6:
● J7 mature - first GA (prod. ready) 07-2011
● J8 descoped (Jigsaw) and slipped (end
2012, 09-2013). Latest plan GA 03-2014
The Business Case
J7 - The Business Case
● Maintenance & security updates from Oracle
until at least 07-2014
● Performance improvements, translating to
better response times & throughput
○ HotSpot JVM enhancements
○ Improved concurrency support
● New features to keep dev team :-) and more
productive
○ Prerequisite / enabler for JEE7
New & Changed Features -
Highlights
J7 - Highlights
Targets improved performance & readability
● Java language enhancements (Project Coin)
● Concurrency enhancements (Fork/Join)
● New File I/O (NIO.2)
● XML APIs (JAXP, JAXB, JAX-WS) updated
● Platform (JVM) enhancements
○ HotSpot JVM performance improvements
○ Better support for dynamic lang. (invokedynamic)
○ New 'G1' garbage collector for certain server apps
...and more. See Oracle JDK 7 Adoption Guide
Migration -
How do we get there?
J7 - How do we get there?
In two phases:
1. Prove runtime compatibility & stability for
existing services on J7 runtime (JVM)
before...
2. Recompiling services to take advantage
of new language features; (at which point
we're committed to J7)
Phase 1 Migration Plan - Overview
1. Prove binary backwards compatibility
for JEE container & all Java services
○ Local dev. environment
○ Existing JEE container running on J7 JVM
○ Services deployed to J7+container
○ Unit and cursory integration tests pass
2. Prove behavioural compatibility for all
Java services
○ Install JDK 7 (JRE) in CI environment
○ Execute integration test suites
Phase 1 Migration Plan - Overview
3. Soak testing
● Prove reliability over extended period
4. Performance testing
● Confirm performance at least as good
5. Phased rollout J7 across remaining envs
● Upgrade JDK / JRE (still J6 javac only)
6. Prove in production
○ Services to run on J7 for agreed period before
declaring success and moving to phase 2 (J7 javac)
Phase 1 Migration Status 04/2013
1. Prove binary backwards compatibility for
JEE container & all Java services
○ Local dev. environment ................................ ✔
○ JEE container running on J7 JVM ............... ✔
○ Services deployed to J7+container .............. ✔
○ Unit and cursory integration tests pass ........ ✔
2. Prove behavioural compatibility for all
Java services
○ Install JDK 7 (JRE) in CI environment ........ ✍
○ Execute integration test suites .................... ✍
Language Enhancements
(Project Coin)
New Language Features
● Diamond operator
○ Type inference for generic types
● Multi-catch blocks
○ Improved exception handling
● Automatic resource management
○ aka try-with-resources
● Switch on strings
○ Enhanced switch statement
● Binary literals
○ Integer types expressed in binary
New Language Features
● Underscores in integer and binary literals
○ Increased code readability
Java 7 code examples
● https://bitbucket.org/neilbrown/java7-examples
Thanks for attending
Neil Brown

Weitere ähnliche Inhalte

Ähnlich wie 2013 05 java 7 brown bag part 1 - new features and migration strategy

Why should i switch to Java SE 7
Why should i switch to Java SE 7Why should i switch to Java SE 7
Why should i switch to Java SE 7
Vinay H G
 
Prashant Kumar_Feb2016
Prashant Kumar_Feb2016Prashant Kumar_Feb2016
Prashant Kumar_Feb2016
Prashant Kumar
 
Gavish_Sharma Resume
Gavish_Sharma ResumeGavish_Sharma Resume
Gavish_Sharma Resume
Gavish Sharma
 
Resume_abir
Resume_abirResume_abir
Resume_abir
Abir De
 
J2EE vs JavaEE
J2EE vs JavaEEJ2EE vs JavaEE
J2EE vs JavaEE
eanimou
 

Ähnlich wie 2013 05 java 7 brown bag part 1 - new features and migration strategy (20)

Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!
Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!
Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!
 
2018 10-oracle-java-licensing-update-support-changes
2018 10-oracle-java-licensing-update-support-changes2018 10-oracle-java-licensing-update-support-changes
2018 10-oracle-java-licensing-update-support-changes
 
Why should i switch to Java SE 7
Why should i switch to Java SE 7Why should i switch to Java SE 7
Why should i switch to Java SE 7
 
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
 
Prepare for JDK 9
Prepare for JDK 9Prepare for JDK 9
Prepare for JDK 9
 
Prashant kumar feb2016
Prashant kumar feb2016Prashant kumar feb2016
Prashant kumar feb2016
 
Prashant Kumar_Feb2016
Prashant Kumar_Feb2016Prashant Kumar_Feb2016
Prashant Kumar_Feb2016
 
Projects in Enterprise Java (Java EE)
Projects in Enterprise Java (Java EE)Projects in Enterprise Java (Java EE)
Projects in Enterprise Java (Java EE)
 
The latest features coming to Java 12
The latest features coming to Java 12The latest features coming to Java 12
The latest features coming to Java 12
 
Java 9-10 What's New
Java 9-10 What's NewJava 9-10 What's New
Java 9-10 What's New
 
How to jSparrow Jenkins?
How to jSparrow Jenkins?How to jSparrow Jenkins?
How to jSparrow Jenkins?
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
Join the Java Evolution NYC
Join the Java Evolution NYCJoin the Java Evolution NYC
Join the Java Evolution NYC
 
JDK versions and OpenJDK
JDK versions and OpenJDKJDK versions and OpenJDK
JDK versions and OpenJDK
 
Retour JavaOne 2009
Retour JavaOne 2009Retour JavaOne 2009
Retour JavaOne 2009
 
Gavish_Sharma Resume
Gavish_Sharma ResumeGavish_Sharma Resume
Gavish_Sharma Resume
 
JVM Languages Support in Eclipse - Monkey-patching the JDT for fun and profit?
JVM Languages Support in Eclipse - Monkey-patching the JDT for fun and profit?JVM Languages Support in Eclipse - Monkey-patching the JDT for fun and profit?
JVM Languages Support in Eclipse - Monkey-patching the JDT for fun and profit?
 
JavaOne Update zur Java Plattform
JavaOne Update zur Java PlattformJavaOne Update zur Java Plattform
JavaOne Update zur Java Plattform
 
Resume_abir
Resume_abirResume_abir
Resume_abir
 
J2EE vs JavaEE
J2EE vs JavaEEJ2EE vs JavaEE
J2EE vs JavaEE
 

Kürzlich hochgeladen

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 

Kürzlich hochgeladen (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 

2013 05 java 7 brown bag part 1 - new features and migration strategy

  • 1. New Features and Migration Strategy Neil Brown, 04/2013 - Brown Bag, Part 1 -
  • 3. JSE, Today ● J6 end-of-life'd by Oracle 02-2013, but... ...there's life after J6: ● J7 mature - first GA (prod. ready) 07-2011 ● J8 descoped (Jigsaw) and slipped (end 2012, 09-2013). Latest plan GA 03-2014
  • 5. J7 - The Business Case ● Maintenance & security updates from Oracle until at least 07-2014 ● Performance improvements, translating to better response times & throughput ○ HotSpot JVM enhancements ○ Improved concurrency support ● New features to keep dev team :-) and more productive ○ Prerequisite / enabler for JEE7
  • 6. New & Changed Features - Highlights
  • 7. J7 - Highlights Targets improved performance & readability ● Java language enhancements (Project Coin) ● Concurrency enhancements (Fork/Join) ● New File I/O (NIO.2) ● XML APIs (JAXP, JAXB, JAX-WS) updated ● Platform (JVM) enhancements ○ HotSpot JVM performance improvements ○ Better support for dynamic lang. (invokedynamic) ○ New 'G1' garbage collector for certain server apps ...and more. See Oracle JDK 7 Adoption Guide
  • 8. Migration - How do we get there?
  • 9. J7 - How do we get there? In two phases: 1. Prove runtime compatibility & stability for existing services on J7 runtime (JVM) before... 2. Recompiling services to take advantage of new language features; (at which point we're committed to J7)
  • 10. Phase 1 Migration Plan - Overview 1. Prove binary backwards compatibility for JEE container & all Java services ○ Local dev. environment ○ Existing JEE container running on J7 JVM ○ Services deployed to J7+container ○ Unit and cursory integration tests pass 2. Prove behavioural compatibility for all Java services ○ Install JDK 7 (JRE) in CI environment ○ Execute integration test suites
  • 11. Phase 1 Migration Plan - Overview 3. Soak testing ● Prove reliability over extended period 4. Performance testing ● Confirm performance at least as good 5. Phased rollout J7 across remaining envs ● Upgrade JDK / JRE (still J6 javac only) 6. Prove in production ○ Services to run on J7 for agreed period before declaring success and moving to phase 2 (J7 javac)
  • 12. Phase 1 Migration Status 04/2013 1. Prove binary backwards compatibility for JEE container & all Java services ○ Local dev. environment ................................ ✔ ○ JEE container running on J7 JVM ............... ✔ ○ Services deployed to J7+container .............. ✔ ○ Unit and cursory integration tests pass ........ ✔ 2. Prove behavioural compatibility for all Java services ○ Install JDK 7 (JRE) in CI environment ........ ✍ ○ Execute integration test suites .................... ✍
  • 14. New Language Features ● Diamond operator ○ Type inference for generic types ● Multi-catch blocks ○ Improved exception handling ● Automatic resource management ○ aka try-with-resources ● Switch on strings ○ Enhanced switch statement ● Binary literals ○ Integer types expressed in binary
  • 15. New Language Features ● Underscores in integer and binary literals ○ Increased code readability Java 7 code examples ● https://bitbucket.org/neilbrown/java7-examples Thanks for attending Neil Brown