SlideShare a Scribd company logo
Spring 4, Java EE 7 or Both? 
Ivar Grimstad 
JDD 2014 @ivar_grimstad
JDD 2014 @ivar_grimstad
Contents 
Spring 4 
Java EE 7 
Combining Spring 4 with Java EE 7 
JDD 2014 @ivar_grimstad
Timeline 
JPE J2EE 1.2 J2EE 1.3 J2EE 1.4 Java EE 5 Java EE 6 Java EE 7 
Spring Spring 1 Spring 2 Spring 3 Spring 4 
1998 2014 
JDD 2014 @ivar_grimstad
Spring Framework 4 
JDD 2014 @ivar_grimstad
JDD 2014 @ivar_grimstad
XML ? 
JDD 2014 @ivar_grimstad
Annotations and 
JavaConfig to the Rescue 
JDD 2014 @ivar_grimstad
New in Spring 4 
JDD 2014 @ivar_grimstad
JDD 2014 @ivar_grimstad
Java 8 Support 
JDD 2014 @ivar_grimstad
@Repeatable 
@Fruit(1) @Fruit(2) 
class Bowl {} 
! 
@Fruits({@Fruit(1), @Fruit(2)}) 
class Bowl {} 
JDD 2014 @ivar_grimstad
Callback Interfaces 
interface RowMapper<T> { 
T mapRow(ResultSet rs, int rowNum); 
} 
JDD 2014 @ivar_grimstad
JMS 2.0 
JTA 1.2 JPA 2.1 
Java EE 7 Support 
Concurrency 
Utilities 
Bean! 
Validation 1.1 
6 JDD 2014 @ivar_grimstad
Groovy Bean Definition Language 
JDD 2014 @ivar_grimstad
Core Container Improvements 
@Autowired 
private Foo<Integer> i; 
! 
@Autowired 
private Foo<String> s; 
JDD 2014 @ivar_grimstad
Web Improvements 
@Controller 
@ResponseBody 
public Response foo() {} 
@RestController 
public Response foo() {} 
JDD 2014 @ivar_grimstad
WebSockets 
spring-websocket 
! 
spring-messaging 
JDD 2014 @ivar_grimstad
Java EE 7 
JDD 2014 @ivar_grimstad
Overview 
JDD 2014 @ivar_grimstad
Java EE 7 Focus Areas 
JDD 2014 @ivar_grimstad
Developer Productivity 
JDD 2014 @ivar_grimstad
Simplicity 
@Stateless 
public class Foo {} 
JDD 2014 @ivar_grimstad
HTML 5 
JDD 2014 @ivar_grimstad
WebSockets 
@ServerEndpoint 
public class Foo {} 
! 
@ClientEndpoint 
public class FooClient { 
JDD 2014 @ivar_grimstad
Meeting Enterprise 
Demands 
JDD 2014 @ivar_grimstad
JMS 2.0 
@Stateless 
public class Foo { 
! 
@Inject 
private JMSContext context; 
! 
@Resource(lookup=“jms/MyQueue”) 
private Queue queue; 
} 
JDD 2014 @ivar_grimstad
Compatibility 
JDD 2014 @ivar_grimstad
Mixing Spring 4 with Java EE 7 
JDD 2014 @ivar_grimstad
Java EE 7 vs Spring 4 
JDD 2014 @ivar_grimstad
Spring 4 vs Java EE 7 
JDD 2014 @ivar_grimstad
Java EE 7 
Container 
Java EE 7 Application (WAR) 
bean 
@Inject 
bean 
JDD 2014 @ivar_grimstad
Spring 4 
Container 
Spring 4 Application (WAR) 
Spring 4 Context 
bean 
@Autowired 
bean 
JDD 2014 @ivar_grimstad
So What about Mixing 
Spring and Java EE? 
JDD 2014 @ivar_grimstad
Java EE 7 -> Spring 4 
Container 
Java EE 7 Application (WAR) 
bean 
Spring 4 Context 
bean 
@Inject 
@Inject @Autowired 
bean bean 
JDD 2014 @ivar_grimstad
Spring 4 -> Java EE 7 
Container 
Spring 4 Application (WAR) 
bean 
Spring 4 Context 
bean 
@Autowired 
@Autowired @Inject 
bean bean 
JDD 2014 @ivar_grimstad
DEMO ! 
JDD 2014 @ivar_grimstad
Integrate a Spring 4 Component 
in 
Java EE 7 Application 
JDD 2014 @ivar_grimstad
Java EE 7 -> Spring 4 
Container 
Java EE 7 Application (WAR) 
resource 
@Inject 
simple 
Spring 4 Context 
awsome 
@Autowired 
simple 
@Inject 
JDD 2014 @ivar_grimstad
Java EE 7 -> Spring 4 
Container 
Java EE 7 Application (WAR) 
Spring 4 Context 
@Inject 
resource awsome 
@Inject @Autowired 
simple 
JDD 2014 @ivar_grimstad
Java EE 7 -> Spring 4 
@InjectX@Autowired 
Container 
Java EE 7 Application (WAR) 
@Inject 
resource awsome 
simple simple 
JDD 2014 @ivar_grimstad
Integrate a Java EE 7 Component 
in 
Spring 4 Application 
JDD 2014 @ivar_grimstad
Spring 4 -> Java EE 7 
Container 
Spring 4 Application (WAR) 
awsome 
@Inject 
simple 
Spring 4 Context 
resource 
@Autowired 
simple 
@EJB 
JDD 2014 @ivar_grimstad
Spring 4 -> Java EE 7 
Container 
Spring 4 Application (WAR) 
awsome 
@Inject 
simple 
Spring 4 Context 
resource 
@EJB 
@Autowired 
JDD 2014 @ivar_grimstad
Spring 4 -> Java EE 7 
Container 
Spring 4 Application (WAR) 
Spring 4 Context 
@Autowired 
@EJB 
resource awsome 
@Inject 
@Autowired 
simple 
JDD 2014 @ivar_grimstad
Summary 
JDD 2014 @ivar_grimstad
Spring 4 and Java EE 7 
solves the same problem 
JDD 2014 @ivar_grimstad
Java EE 7 require less 
configuration and 
dependencies 
JDD 2014 @ivar_grimstad
Spring 4 is more portable 
JDD 2014 @ivar_grimstad
Using Spring 4 from 
Java EE is easier 
JDD 2014 @ivar_grimstad
Mixing is possible 
JDD 2014 @ivar_grimstad
…but… 
JDD 2014 @ivar_grimstad
Favor one framework 
over mixing 
JDD 2014 @ivar_grimstad
Sources 
https://github.com/ivargrimstad/spring-javaee 
JDD 2014 @ivar_grimstad
cybercom.com 
JDD 2014 @ivar_grimstad

More Related Content

PPTX
A Deep Dive into the W3C WebDriver Specification
PDF
JDD2014: Effective refactoring - Włodek Krakowski
PDF
JDD2014: Conversation patterns for software professionals - Michał Bartyzel
PDF
JavaOne 2011: Migrating Spring Applications to Java EE 6
PDF
JAZOON'13 - Sam Brannen - Spring Framework 4.0 - The Next Generation
PPTX
Java EE vs Spring Framework
PDF
01 spring-intro
PPTX
Spring framework
A Deep Dive into the W3C WebDriver Specification
JDD2014: Effective refactoring - Włodek Krakowski
JDD2014: Conversation patterns for software professionals - Michał Bartyzel
JavaOne 2011: Migrating Spring Applications to Java EE 6
JAZOON'13 - Sam Brannen - Spring Framework 4.0 - The Next Generation
Java EE vs Spring Framework
01 spring-intro
Spring framework

Similar to JDD2014: Spring 4, JAVA EE 7 or both? - Ivar Grimstad (20)

PDF
Spring 4 on Java 8 by Juergen Hoeller
PDF
jDays2015 - JavaEE vs. Spring Smackdown
PPT
Java EE 6 & Spring: A Lover's Quarrel
PDF
Spring 4-groovy
PPT
Spring - a framework written by developers
ODP
OTN Developer Days - Java EE 6
PDF
Spring Framework 4.0 - The Next Generation - Soft-Shake 2013
PDF
Java EE 7: the Voyage of the Cloud Treader
PDF
Java EE 6 workshop at Dallas Tech Fest 2011
PDF
Java EE 6 : Paving The Path For The Future
PPTX
Next stop: Spring 4
PPT
Hybernat and structs, spring classes in mumbai
PDF
Java EE6 Overview
PDF
Microservices - java ee vs spring boot and spring cloud
PDF
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
PDF
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
PDF
Building Next-Gen Web Applications with the Spring 3 Web Stack
PDF
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
KEY
Multi client Development with Spring
PDF
JavaEE6 my way
Spring 4 on Java 8 by Juergen Hoeller
jDays2015 - JavaEE vs. Spring Smackdown
Java EE 6 & Spring: A Lover's Quarrel
Spring 4-groovy
Spring - a framework written by developers
OTN Developer Days - Java EE 6
Spring Framework 4.0 - The Next Generation - Soft-Shake 2013
Java EE 7: the Voyage of the Cloud Treader
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 : Paving The Path For The Future
Next stop: Spring 4
Hybernat and structs, spring classes in mumbai
Java EE6 Overview
Microservices - java ee vs spring boot and spring cloud
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Building Next-Gen Web Applications with the Spring 3 Web Stack
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Multi client Development with Spring
JavaEE6 my way
Ad

Recently uploaded (20)

PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
iTop VPN Crack Latest Version Full Key 2025
PDF
Cost to Outsource Software Development in 2025
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Complete Guide to Website Development in Malaysia for SMEs
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PDF
Nekopoi APK 2025 free lastest update
PPTX
Weekly report ppt - harsh dattuprasad patel.pptx
PPTX
history of c programming in notes for students .pptx
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Wondershare Filmora 15 Crack With Activation Key [2025
Internet Downloader Manager (IDM) Crack 6.42 Build 41
iTop VPN Crack Latest Version Full Key 2025
Cost to Outsource Software Development in 2025
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Oracle Fusion HCM Cloud Demo for Beginners
Patient Appointment Booking in Odoo with online payment
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
Design an Analysis of Algorithms II-SECS-1021-03
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Digital Systems & Binary Numbers (comprehensive )
Odoo Companies in India – Driving Business Transformation.pdf
Complete Guide to Website Development in Malaysia for SMEs
wealthsignaloriginal-com-DS-text-... (1).pdf
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Nekopoi APK 2025 free lastest update
Weekly report ppt - harsh dattuprasad patel.pptx
history of c programming in notes for students .pptx
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Ad

JDD2014: Spring 4, JAVA EE 7 or both? - Ivar Grimstad