Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Spring 4, Java EE 7 or Both? @Øredev 2014
Search
ivargrimstad
November 07, 2014
Technology
0
110
Spring 4, Java EE 7 or Both? @Øredev 2014
Øredev 2014
ivargrimstad
November 07, 2014
Tweet
Share
More Decks by ivargrimstad
See All by ivargrimstad
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
410
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
1.1k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
1.4k
Duke on CRaC with Jakarta EE
ivargrimstad
1
1.2k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1.5k
Jakarta EE Meets AI
ivargrimstad
0
1.6k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
2.9k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
3.2k
Duke on CRaC with Jakarta EE
ivargrimstad
0
3k
Other Decks in Technology
See All in Technology
「クラウドコスト絶対削減」を支える技術—FinOpsを超えた徹底的なクラウドコスト削減の実践論
delta_tech
4
110
OPENLOGI Company Profile for engineer
hr01
1
33k
Witchcraft for Memory
pocke
1
730
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
250
本が全く読めなかった過去の自分へ
genshun9
0
740
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
120
ビギナーであり続ける/beginning
ikuodanaka
3
650
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
6
4k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
26k
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
190
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
170
Geminiとv0による高速プロトタイピング
shinya337
0
220
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
We Have a Design System, Now What?
morganepeng
53
7.7k
Visualization
eitanlees
146
16k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Producing Creativity
orderedlist
PRO
346
40k
Code Reviewing Like a Champion
maltzj
524
40k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Adopting Sorbet at Scale
ufuk
77
9.4k
Gamification - CAS2011
davidbonilla
81
5.3k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Transcript
@ivar_grimstad Øredev 2014 Spring 4, Java EE 7 or Both?
Ivar Grimstad
@ivar_grimstad Øredev 2014 @ivar_grimstad https://github.com/ivargrimstad https://www.linkedin.com/in/ivargrimstad http://lanyrd.com/profile/ivargrimstad/
@ivar_grimstad Øredev 2014 Contents Spring 4 Java EE 7 Combining
Spring 4 with Java EE 7
@ivar_grimstad Øredev 2014 Timeline 1998 2014 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
@ivar_grimstad Øredev 2014 Spring Framework 4
@ivar_grimstad Øredev 2014
@ivar_grimstad Øredev 2014 XML ?
@ivar_grimstad Øredev 2014 Annotations and JavaConfig to the Rescue
@ivar_grimstad Øredev 2014 New in Spring 4
@ivar_grimstad Øredev 2014
@ivar_grimstad Øredev 2014 Java 8 Support
@ivar_grimstad Øredev 2014 @Repeatable @Fruit(1) @Fruit(2) class Bowl {} @Fruits({@Fruit(1),
@Fruit(2)}) class Bowl {}
@ivar_grimstad Øredev 2014 Callback Interfaces interface RowMapper<T> { T mapRow(ResultSet
rs, int rowNum); }
@ivar_grimstad Øredev 2014 Java EE 7 Support JMS 2.0 Concurrency
Utilities JTA 1.2 JPA 2.1 Bean Validation 1.1 Java EE 6 Support
@ivar_grimstad Øredev 2014 Groovy Bean Definition Language
@ivar_grimstad Øredev 2014 Core Container Improvements @Autowired private Foo<Integer> i;
@Autowired private Foo<String> s;
@ivar_grimstad Øredev 2014 Core Container Improvements @Conditional(WindowsCondition.class) @Bean private MyBean
windowsBean() { return new WindowsBean(); }
@ivar_grimstad Øredev 2014 Web Improvements @Controller @ResponseBody public Response foo()
{} @RestController public Response foo() {}
@ivar_grimstad Øredev 2014 WebSockets spring-websocket spring-messaging
@ivar_grimstad Øredev 2014 Java EE 7
@ivar_grimstad Øredev 2014 Overview
@ivar_grimstad Øredev 2014 Java EE 7 Focus Areas
@ivar_grimstad Øredev 2014 Developer Productivity
@ivar_grimstad Øredev 2014 Simplicity @Stateless public class Foo {}
@ivar_grimstad Øredev 2014 HTML 5
@ivar_grimstad Øredev 2014 WebSockets @ServerEndpoint public class Foo {} @ClientEndpoint
public class FooClient {
@ivar_grimstad Øredev 2014 Meeting Enterprise Demands
@ivar_grimstad Øredev 2014 JMS 2.0 @Stateless public class Foo {
@Inject private JMSContext context; @Resource(lookup=“jms/MyQueue”) private Queue queue; }
@ivar_grimstad Øredev 2014 Compatibility
@ivar_grimstad Øredev 2014 Mixing Spring 4 with Java EE 7
@ivar_grimstad Øredev 2014 Java EE 7 vs Spring 4
@ivar_grimstad Øredev 2014 Spring 4 vs Java EE 7
@ivar_grimstad Øredev 2014 Java EE 7 Container Java EE 7
Application (WAR) bean bean @Inject
@ivar_grimstad Øredev 2014 Spring 4 Container Spring 4 Application (WAR)
Spring 4 Context bean bean @Autowired
@ivar_grimstad Øredev 2014 So What about Mixing Spring and Java
EE?
@ivar_grimstad Øredev 2014 Java EE 7 -> Spring 4 Container
Java EE 7 Application (WAR) bean Spring 4 Context bean bean bean @Inject @Inject @Autowired
@ivar_grimstad Øredev 2014 Spring 4 -> Java EE 7 Container
Spring 4 Application (WAR) bean Spring 4 Context bean bean bean @Autowired @Inject @Autowired
@ivar_grimstad Øredev 2014 DEMO !
@ivar_grimstad Øredev 2014 Integrate a Spring 4 Component in Java
EE 7 Application
@ivar_grimstad Øredev 2014 Java EE 7 -> Spring 4 Container
Java EE 7 Application (WAR) resource simple @Inject Spring 4 Context awsome simple @Autowired @Inject
@ivar_grimstad Øredev 2014 Java EE 7 -> Spring 4 Container
Java EE 7 Application (WAR) resource awsome simple Spring 4 Context @Autowired @Inject @Inject
@ivar_grimstad Øredev 2014 Java EE 7 -> Spring 4 Container
Java EE 7 Application (WAR) resource awsome simple simple @Inject @Inject @Autowired X
@ivar_grimstad Øredev 2014 Integrate a Java EE 7 Component in
Spring 4 Application
@ivar_grimstad Øredev 2014 Spring 4 -> Java EE 7 Container
Spring 4 Application (WAR) awsome simple @Inject Spring 4 Context resource simple @Autowired @EJB
@ivar_grimstad Øredev 2014 Spring 4 -> Java EE 7 Container
Spring 4 Application (WAR) awsome simple @Inject resource Spring 4 Context @Autowired @EJB
@ivar_grimstad Øredev 2014 Spring 4 -> Java EE 7 Container
Spring 4 Application (WAR) awsome resource Spring 4 Context @EJB @Inject simple @Autowired @Autowired X
@ivar_grimstad Øredev 2014 Summary
@ivar_grimstad Øredev 2014 Spring 4 and Java EE 7 solves
the same problem
@ivar_grimstad Øredev 2014 Java EE 7 require less configuration and
dependencies
@ivar_grimstad Øredev 2014 Spring 4 is more portable
@ivar_grimstad Øredev 2014 Using Spring 4 from Java EE is
safer
@ivar_grimstad Øredev 2014 Mixing is possible
@ivar_grimstad Øredev 2014 …but…
@ivar_grimstad Øredev 2014 Favor one framework over mixing
@ivar_grimstad Øredev 2014 Use Cases
@ivar_grimstad Øredev 2014 Container Java EE 7 Application (WAR) bean
Spring 4 Context bean bean bean @Inject @Inject @Autowired Use Spring Component
@ivar_grimstad Øredev 2014 Container Java EE 7 Application (WAR) bean
Spring 4 Context bean bean bean @Inject @Inject @Autowired Migration
@ivar_grimstad Øredev 2014 Container Spring 4 Application (WAR) bean Spring
4 Context bean bean bean @Autowired @Inject @Autowired Migration
@ivar_grimstad Øredev 2014 Sources https://github.com/ivargrimstad/spring-javaee
@ivar_grimstad Øredev 2014 cybercom.com