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
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
500
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
620
Cloud Native Apps with Spring Cloud
snicoll
1
520
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
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.3k
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
5.3k
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2k
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
210
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
530
Oxcを導入して開発体験が向上した話
yug1224
4
310
RTSPクライアントを自作してみた話
simotin13
0
570
ふつうのFeature Flag実践入門
irof
7
3.7k
New "Type" system on PicoRuby
pocke
1
830
AI時代のUIはどこへ行く?その2!
yusukebe
21
7k
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
120
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
330
Featured
See All Featured
Test your architecture with Archunit
thirion
1
2.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Building an army of robots
kneath
306
46k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
Statistics for Hackers
jakevdp
799
230k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Six Lessons from altMBA
skipperchong
29
4.3k
Navigating Team Friction
lara
192
16k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
240
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
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!