Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
From Spring Boot 2.2 to Spring Boot 2.3
Search
Stéphane Nicoll
February 25, 2020
Programming
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
From Spring Boot 2.2 to Spring Boot 2.3
Stéphane Nicoll
February 25, 2020
Transcript
41 slides
© Copyright 2020 Pivotal Software, Inc. All rights Reserved. From
Spring Boot 2.2 to Spring Boot 2.3 Stéphane Nicoll - @snicoll
2019 Edition Recap October 7-10 2019 Austin Convention Center
None
None
None
Spring Boot 2.2
Java 13 https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Versions#jdk-version-range
Dependency management Upgrades
New Features
Important Features
None
RSocket
RSocket
Health Indicator Group
Health Indicator Group management.endpoint.health.group.liveness.include=ping management.endpoint.health.group.readiness.include=db,redis GET /actuator/health/liveness GET /actuator/health/readiness
Immutable Configuration Properties
Immutable Configuration Properties @ConfigurationProperties("acme") @ConstructorBinding public class AcmeProperties { private
final Duration timeout; private final DataSize bufferSize; private final Security security; public AcmeProperties(@DefaultValue("10s") Duration timeout, DataSize bufferSize, Security security) { this.timeout = timeout; this.bufferSize = bufferSize; this.security = security; } ... }
@ConfigurationProperties("acme") @ConstructorBinding data class AcmeProperties(val timeout: Duration = Duration.ofSeconds(10), val
bufferSize: DataSize?, val security: Security) { ... } https://github.com/snicoll/demo-immutable-config-props Immutable Configuration Properties
JUnit 5
JUnit 5 // @ExtendWith(SpringExtension.class) @SpringBootTest class MyApplicationTests { @Test void
resourceFileCreated(@TempDir Path tmpDir) { // ... } }
Performance
Performance • Startup time • Lazy initialization • Runtime performance
start.spring.io
None
None
None
Statistics
How many projects do we generate a year? 10K 100K
1M+
How many projects do we generate a year? 10K 100K
1M+ ✔ month
What are the top 3 countries?* India US China *
Sep 2018 - Sep 2019 #15
What’s the client split?* Web IDE CLI * Sep 2018
- Sep 2019
What’s the client split?* Web IDE CLI * Sep 2018
- Sep 2019 (without China)
⚡To Spring Boot 2.3⚡
Spring Framework 5.3
Spring Framework 5.3 • Preparing for JDK 17 LTS •
Embracing GraalVM native images • Wrap-up 5.x themes (RSocket, Coroutines)
Spring Boot 2.3
Spring Boot 2.3 • Container Support with Cloud Native Buildpacks
• Kubernetes Support • Dependency Upgrades (Spring Data) • 6 months release cadence (Apr 2020)
Support Policy
Support Policy October 2018 Spring Boot 2.1 GA August 2019
Spring Boot 1 EOL January 2020 Spring Framework 5.0/4.3 last release October 2019 Spring Boot 2.2 GA
April 2020 Spring Boot 2.3 GA October 2020 Spring Framework
5.3 / Spring Boot 2.4 GA December 2020 Spring Framework 5.1/4.3 EOL November 2020 Spring Boot 2.1 EOL Support Policy
© Copyright 2020 Pivotal Software, Inc. All rights Reserved. From
Spring Boot 2.2 to Spring Boot 2.3 & 2.4 @snicoll Thanks!
More Decks by Stéphane Nicoll
See All by Stéphane Nicoll
Testing the Spring Framework
snicoll
0
520
Spring Boot 2.0 Web Applications
snicoll
5
1.7k
Spring Framework 5.0 Themes and Trends
snicoll
15
15k
Spring Boot 1.3 pour le web
snicoll
3
640
Cloud Native Apps with Spring Cloud
snicoll
1
550
From Zero to Hero with Spring Boot (extended version)
snicoll
2
1.7k
Master Spring Boot auto-configuration
snicoll
7
4.5k
De zéro à héros avec Spring Boot
snicoll
10
6.1k
"Bootiful" Applications with Spring Boot
snicoll
3
1.1k
Other Decks in Programming
See All in Programming
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.8k
느린 네트워크와 저사양 디바이스 사용자를 위한 웹뷰 로딩 시간 개선기
kmkim
1
220
オーケストレーション記述言語 Katari
yukikurage
0
250
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.7k
Rails初心者がパスキーを実装してみて大変だったこと
ktombow
0
170
AI駆動開発4年目の現在地(『あなたはFDEになるべきか?』イベント資料)
kumaiu
0
610
Seven New Principles of Software Engineering
yegor256
0
480
AmebaブログはKMPから卒業します
kmars0605
0
350
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
270
複数ドメインを一つのアプリに統合するFlutterの設計と運用_FlutterKaigi2026登壇資料(須永高弘)
takahirosunaga
0
180
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
13
5.9k
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
370
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
350
4 Signs Your Business is Dying
shpigford
187
23k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
630
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Git: the NoSQL Database
bkeepers
PRO
433
67k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
610
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
2
520
What's in a price? How to price your products and services
michaelherold
247
13k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
2
520
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
430
How GitHub (no longer) Works
holman
316
150k