Resource Handling in Spring MVC 4.1
summary
Spring MVC 4.1 adds a resource pipeline that computes content-based fingerprinting for URLs, provides a resource resolver chain (path, gzip, version, cached) plus transformers to rewrite CSS and appcache links, and exposes a resource URL provider and encoding filter for view integration. The recommended practice is build-time optimization with gulp + bower + npm and shipping optimized assets as a JAR on the classpath; spring.io runs this in production and records 100+ deploys in a few months, confirming the approach works.
AI-written summary · about
chapters (30)
- 0:00Introduction to Resource Handling
- 2:00Spring MVC Resource Basics
- 4:39Resource Optimization Goals
- 6:37URL Fingerprinting Explained
- 9:45Asset Pipeline vs Build Tasks
- 13:00Spring.io Website Refactoring
- 16:55Modern Client-Side Development
- 21:21Tooling and Build Integration
- 24:29Development vs Production Profiles
- 27:27Source Maps and Build Layouts
- 30:43Modularizing Client and Server
- 33:42Serving Resources in Production
- 37:56Real-world Production Experience
- 39:27Resource Handling Demo Setup
- 41:47Gulp and Gradle Demo
- 45:24Build Process Explanation
- 48:26Flexibility and Future Trends
- 50:50Server-Side Support in Spring
- 53:22Resolvers and Transformers
- 55:11Built-in Resolution Strategies
- 56:52Public URL Provider
- 58:43Rendering Links in Views
- 1:01:13Advanced Versioning Techniques
- 1:02:36Drawing the Line on Runtime
- 1:05:43Supporting Full Asset Pipelines
- 1:06:56Server-Side Config Demo
- 1:09:21AppCache and Cache Configuration
- 1:11:12Resource Chain and Profiles
- 1:15:10Final Demo and Caching
- 1:19:15Q&A and Closing
related talks
01h 22mSpring MVC 4.2: New and Noteworthy
01h 28mIntro to Spring Boot for the web tier
01h 26mWhat's new in Spring MVC 3.2
48mGetting Thymeleaf ready for Spring 5 and Reactive
48mEfficient web apps with Spring Boot 2
21mBuilding Flexible APIs with Spring HATEOAS
49mFrom CRUD to Hypermedia APIs with Spring (RU)
51mOpenAPI and Spring-Boot 4 - What's New?
