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
2.3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JEEConf - Spring 4, Java EE 7 or Both? @JEEConf 2014
Slides from talk at JEEConf 2014 in Kiev.
ivargrimstad
May 24, 2014
More Decks by ivargrimstad
See All by ivargrimstad
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
14
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
180
Jakarta EE Challenge at Code the Continuum
ivargrimstad
0
380
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
1.1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.1k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
1.2k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
920
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
980
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
2k
Other Decks in Programming
See All in Programming
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
230
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
450
どこまでゆるくて許されるのか
tk3fftk
0
480
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
200
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.4k
Claude Team Plan導入・ガイド
tk3fftk
0
190
act2-costs.pdf
sumedhbala
0
110
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
200
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
120
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
650
Music & Morning Musume
bryan
47
7.3k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
410
Context Engineering - Making Every Token Count
addyosmani
9
1k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
340
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
180
From π to Pie charts
rasagy
0
230
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
210
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