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
Jakarta EE meets AI
ivargrimstad
0
400
Jakarta EE meets AI
ivargrimstad
0
2.7k
Jakarta EE meets AI
ivargrimstad
0
2.3k
Jakarta EE meets AI
ivargrimstad
0
2.2k
Jakarta EE meets AI
ivargrimstad
0
2.1k
Jakarta EE meets AI
ivargrimstad
0
1.9k
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
2.2k
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
2.2k
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
2.1k
Other Decks in Technology
See All in Technology
信頼されるためにやったこと、 やらなかったこと。/What we did to be trusted, What we did not do.
bitkey
PRO
0
1.7k
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
3
240
pg_bigmをRustで実装する(第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
shinyakato_
0
150
[JAWS-UG新潟#20] re:Invent2024 -CloudOperationsアップデートについて-
shintaro_fukatsu
0
150
rootful・rootless・privilegedコンテナの違い/rootful_rootless_privileged_container_difference
moz_sec_
0
110
Bring Your Own Container: When Containers Turn the Key to EDR Bypass/byoc-avtokyo2024
tkmru
0
640
The future we create with our own MVV
matsukurou
0
1.6k
いまからでも遅くないコンテナ座学
nomu
0
210
動画配信の フロントエンドを支える 4年間とこれから
nisshii0313
0
120
完全自律型AIエージェントとAgentic Workflow〜ワークフロー構築という現実解
pharma_x_tech
0
170
UI State設計とテスト方針
rmakiyama
4
940
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Automating Front-end Workflow
addyosmani
1366
200k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Music & Morning Musume
bryan
46
6.3k
Six Lessons from altMBA
skipperchong
27
3.5k
How GitHub (no longer) Works
holman
312
140k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Pragmatic Product Professional
lauravandoore
32
6.4k
How STYLIGHT went responsive
nonsquared
96
5.3k
Become a Pro
speakerdeck
PRO
26
5.1k
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