Spring Boot 4.0.1 Release
Spring Boot 4.0.1 Release
This release upgrades all 23 Spring Boot projects from version 3.5.9 to 4.0.1.
Major Changes
- Spring Boot: 3.5.9 → 4.0.1
- Spring Framework: 6.x → 7.x (automatic with Boot 4.0)
- Spring Security: 6.x → 7.0.2 (automatic with Boot 4.0)
- Hibernate: 6.x → 7.x (automatic with Boot 4.0)
- Java Version: 25 (unchanged, fully supported)
POM Updates (23 files)
- Updated Spring Boot parent version to 4.0.1
- Replaced
spring-boot-starter-webwithspring-boot-starter-webmvc(modular starter requirement) - Replaced
spring-boot-starter-testwithspring-boot-starter-webmvc-test(modular test starter requirement) - Modernized WebJars: Replaced
webjars-locatorwithwebjars-locator-lite(22 projects) for improved Spring Framework 7 compatibility and performance - eliminates classpath scanning overhead - Updated Bootstrap WebJar: 5.3.2 → 5.3.8
- Updated Font Awesome WebJar: 6.5.1 → 7.1.0
- Maintained
thymeleaf-extras-springsecurity6(compatible with Spring Security 7)
Code Updates (15 files)
Updated Spring Security configuration in WebSecurityConfig.java files:
- Changed
DaoAuthenticationProvider()no-arg constructor to constructor withUserDetailsServiceparameter - Removed deprecated
setUserDetailsService()method calls
Breaking Changes Addressed
- Spring Boot 4.0 requires modular starters (
spring-boot-starter-web→spring-boot-starter-webmvc) - Spring Security 7 requires
UserDetailsServiceinDaoAuthenticationProviderconstructor - Test infrastructure requires modular test starters
- WebJars locator modernization for Spring Framework 7 compatibility
Compatibility
- Jakarta EE 11 baseline
- Servlet 6.1 requirement
- Spring Framework 7.x
- Spring Security 7.0.2
- Hibernate 7.x
- Java 17+ required (Java 25 supported and tested)
Impact
- 38 files changed (84 insertions, 99 deletions)
- 23 pom.xml files updated
- 15 WebSecurityConfig.java files updated
Sections Updated
- Section 03: Registration (7 projects)
- Section 04: Login/Logout (5 projects)
- Section 05: Recruiter Profile (3 projects)
- Section 06: Recruiter Post New Job (1 project)
- Section 07: Recruiter Dashboard (2 projects)
- Section 08: Job Candidate Profile (1 project)
- Section 09: Job Candidate Dashboard & Apply (1 project)
- Section 10: Job Candidate Save a Job (1 project)
- Section 11: Download Candidate Resume (1 project)
- Section 12: Global Search (1 project)
Related Pull Requests
- #23: Update Bootstrap to 5.3.8 and Font Awesome to 7.1.0
- #22: Replace webjars-locator with webjars-locator-lite for Spring Boot 4 compatibility
- #21: Add Maven wrapper files to all Maven projects
- #20: Add .gitattributes to all Maven projects
Migration Notes
Projects upgrading from Spring Boot 3.5.9 should:
- Update parent POM to Spring Boot 4.0.1
- Replace web starters with modular equivalents
- Update Spring Security authentication provider configuration
- Replace webjars-locator with webjars-locator-lite
- Verify Java 17+ runtime
- Test with Jakarta EE 11 and Servlet 6.1 compatibility