~/talk

Null Safety in Spring Applications With JSpecify and NullAway

Talkat IntelliJ IDEA Conf 2025 · 2025-06-03..06-04· [java, developer-experience]
slides:none on file

JSpecify 1.0 annotations plus NullAway + ErrorProne enforce null-safety at compile time, turning IDE warnings into failing Gradle builds; Kotlin 2.1 natively reads JSpecify so Java libraries become idiomatic for Kotlin. Spring migrates APIs (observed split 90% non-null 10% nullable) and bundles JSpecify in Spring Framework 7 / Spring Boot 4, uses a Nullness runtime enum, and recommends NullAway configuration (Java 22 javac, Java 17 release target). Lazy-initialized fields use suppressions like NullAway.Init.

AI-written summary · about

  1. 0:00Null safety challenges in Java
  2. 4:54JSpecify annotations for null safety
  3. 13:23JSpecify vs other nullable solutions
  4. 20:51NullAway build-time enforcement
  5. 30:01JSpecify beyond Spring
  6. 38:52Spring 7 runtime null checks
  7. 44:51Null safety for lazy initialization
  8. 47:17Spring Boot 4 null-safe APIs
  9. 50:49Null safety as zero-cost abstraction
  10. 53:36Future of Java null safety
  11. 55:43Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.