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
JEEConf - Spring 4, Java EE 7 or Both? @JEEConf...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ivargrimstad
May 24, 2014
Programming
3
2.3k
JEEConf - Spring 4, Java EE 7 or Both? @JEEConf 2014
Slides from talk at JEEConf 2014 in Kiev.
ivargrimstad
May 24, 2014
Tweet
Share
More Decks by ivargrimstad
See All by ivargrimstad
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
970
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
600
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
810
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
850
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
690
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
730
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
760
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.1k
Duke on CRaC with Jakarta EE
ivargrimstad
0
1.1k
Other Decks in Programming
See All in Programming
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
330
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
970
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
360
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.1k
Windows on Ryzen and I
seosoft
0
380
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
220
Java 21/25 Virtual Threads 소개
debop
0
260
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
270
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
610
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
550
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
360
Featured
See All Featured
How to build a perfect <img>
jonoalderson
1
5.3k
Visualization
eitanlees
150
17k
How to make the Groovebox
asonas
2
2k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
260
The World Runs on Bad Software
bkeepers
PRO
72
12k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
410
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
330
So, you think you're a good person
axbom
PRO
2
2k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
480
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
120
Transcript
@ivar_grimstad JEEConf 2014 Spring 4, Java EE 7 or Both?
Ivar Grimstad
@ivar_grimstad JEEConf 2014
@ivar_grimstad JEEConf 2014 Spring 4 Java EE 7 Combining Spring
4 with Java EE 7 Contents
@ivar_grimstad JEEConf 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 JEEConf 2014 Spring Framework 4
@ivar_grimstad JEEConf 2014
@ivar_grimstad JEEConf 2014 XML ?
@ivar_grimstad JEEConf 2014 Annotations and JavaConfig to the Rescue
@ivar_grimstad JEEConf 2014 New in Spring Framework 4
@ivar_grimstad JEEConf 2014
@ivar_grimstad JEEConf 2014 Java 8 Support
@ivar_grimstad JEEConf 2014 @Repeatable @Fruit(1) @Fruit(2) class Bowl {} !
@Fruits({@Fruit(1), @Fruit(2)}) class Bowl {}
@ivar_grimstad JEEConf 2014 Callback Interfaces interface RowMapper<T> { T mapRow(ResultSet
rs, int rowNum); }
@ivar_grimstad JEEConf 2014 Java EE 7 Support Java EE 6
Support
@ivar_grimstad JEEConf 2014 Groovy Bean Definition Language
@ivar_grimstad JEEConf 2014 Core Container Improvements @Autowired private Foo<Integer> i;
! @Autowired private Foo<String> s;
@ivar_grimstad JEEConf 2014 Web Improvements @Controller @ResponseBody public Response foo()
{} @RestController public Response foo() {}
@ivar_grimstad JEEConf 2014 WebSockets spring-websocket ! spring-messaging
@ivar_grimstad JEEConf 2014 Java EE 7
@ivar_grimstad JEEConf 2014 Java EE 7 Focus Areas
@ivar_grimstad JEEConf 2014 Developer Productivity
@ivar_grimstad JEEConf 2014 Simplicity @Stateless public class Foo {}
@ivar_grimstad JEEConf 2014 HTML 5
@ivar_grimstad JEEConf 2014 WebSockets @ServerEndpoint public class Foo {}
@ivar_grimstad JEEConf 2014 Meeting Enterprise Demands
@ivar_grimstad JEEConf 2014 JMS 2.0 @Stateless public class Foo {
! @Inject private JMSContext context; ! @Resource(lookup=“jms/MyQueue”) private Queue queue; }
@ivar_grimstad JEEConf 2014 Overview
@ivar_grimstad JEEConf 2014 Compatibility
@ivar_grimstad JEEConf 2014 Mixing Spring 4 with Java EE 7
@ivar_grimstad JEEConf 2014 Java EE 7 vs Spring 4
@ivar_grimstad JEEConf 2014 Spring 4 vs Java EE 7
@ivar_grimstad JEEConf 2014 Spring 4
@ivar_grimstad JEEConf 2014 Java EE 7
@ivar_grimstad JEEConf 2014 Spring 4 + Java EE 7
@ivar_grimstad JEEConf 2014 DEMO !
@ivar_grimstad JEEConf 2014 Create a Spring 4 Application Rewrite it
to Java EE 7 Combine the two approaches Run them in different application servers WildFly, GlassFish, Tomcat Contents
@ivar_grimstad JEEConf 2014 Summary Summary
@ivar_grimstad JEEConf 2014 Spring 4 Config @Configuration @ComponentScan(“eu.agilejava.spring4”) @EnableWebMvc public
class ApplicationConfig extends WebMvcConfigurerAdapter { }
@ivar_grimstad JEEConf 2014 Java EE 7 Config @ApplicationPath(“api”) public class
ApplicationConfig extends Application { }
@ivar_grimstad JEEConf 2014 Spring 4 + Java EE 7 Config
@Configuration @ComponentScan(“eu.agilejava.both”) @ApplicationPath(“api”) public class ApplicationConfig extends Application { }
@ivar_grimstad JEEConf 2014 Spring 4 Portability No configuration changes No
code changes New dependency (pom.xml)
@ivar_grimstad JEEConf 2014 Java EE 7 Portability Minor configuration changes
No code changes No new dependencies (pom.xml)
@ivar_grimstad JEEConf 2014 Spring 4 + Java EE 7 Portability
Configuration changes No code changes New dependencies (pom.xml)
@ivar_grimstad JEEConf 2014 Spring 4 is more portable Conclusion
@ivar_grimstad JEEConf 2014 Java EE 7 requires less configuration Conclusion
@ivar_grimstad JEEConf 2014 Java EE 7 requires less dependencies Conclusion
@ivar_grimstad JEEConf 2014 Mixing is possible Conclusion
@ivar_grimstad JEEConf 2014 Favor one framework over mixing
@ivar_grimstad JEEConf 2014 https://github.com/ivargrimstad/spring-javaee Sources
@ivar_grimstad JEEConf 2014 cybercom.com