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
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
180
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
420
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
500
Jakarta EE Core Profile and Helidon - Speed, Simplicity, and AI Integration
ivargrimstad
0
500
Jakarta EE Meets AI
ivargrimstad
0
780
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
910
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
970
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
1.3k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
1.7k
Other Decks in Technology
See All in Technology
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
270
いま注目のAIエージェントを作ってみよう
supermarimobros
0
360
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
22
12k
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
500
Snowflake×dbtを用いたテレシーのデータ基盤のこれまでとこれから
sagara
0
130
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
2k
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
920
20250913_JAWS_sysad_kobe
takuyay0ne
2
250
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
10
75k
S3アクセス制御の設計ポイント
tommy0124
3
210
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
440
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
280
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
How STYLIGHT went responsive
nonsquared
100
5.8k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
The Cult of Friendly URLs
andyhume
79
6.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Code Review Best Practice
trishagee
71
19k
Designing for Performance
lara
610
69k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Writing Fast Ruby
sferik
628
62k
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