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
220
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
More Decks by Stéphane Nicoll
See All by Stéphane Nicoll
Testing the Spring Framework
snicoll
0
510
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
630
Cloud Native Apps with Spring Cloud
snicoll
1
540
From Zero to Hero with Spring Boot (extended version)
snicoll
2
1.6k
Master Spring Boot auto-configuration
snicoll
7
4.5k
De zéro à héros avec Spring Boot
snicoll
10
6k
"Bootiful" Applications with Spring Boot
snicoll
3
1.1k
Other Decks in Programming
See All in Programming
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
4.2k
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
130
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
110
カツオ、ご期待ください
suneo3476
0
110
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
210
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
270
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
2
310
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
180
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
660
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
3k
AWS DevOps Agentで インシデント対応をAIに任せたい
honmarkhunt
7
3.3k
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
550
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Marketing to machines
jonoalderson
1
5.8k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.1k
The Invisible Side of Design
smashingmag
301
52k
A Modern Web Designer's Workflow
chriscoyier
699
190k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
590
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
770
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Claude Code のすすめ
schroneko
67
230k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
420
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
520
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Transcript
© 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!