Essential Spring 3 & 4 Modules and Their Required JARs

This guide lists the core Spring 3 and Spring 4 modules, explains the purpose of each module, and provides the exact JAR dependencies you need to include when using Spring without Spring Boot, helping avoid compilation and runtime errors.

Senior Brother's Insights
Senior Brother's Insights
Senior Brother's Insights
Essential Spring 3 & 4 Modules and Their Required JARs

If you use Spring without Spring Boot, every feature requires a specific JAR, and the sheer number of possible dependencies can cause confusion and errors. This article organizes the core modules of Spring 3 and Spring 4 and lists the corresponding JAR files needed for each module.

Spring 3 Framework Structure

Spring 3 framework diagram
Spring 3 framework diagram

Spring 4 Framework Structure

Spring 4 framework diagram
Spring 4 framework diagram

Compared with Spring 3, Spring 4 removes Struts and adds Messaging and WebSocket support.

Core Container (Core Container)

spring-core

: Core classes used extensively by other modules. spring-beans: Support for defining beans. spring-context: Runtime Spring container. spring-context-support: Integration support for third‑party packages such as mail services and view resolvers. spring-expression: Spring Expression Language.

AOP

spring-aop

: Proxy‑based AOP support. spring-aspects: AspectJ‑based AOP support. spring-instrument: Class‑level utilities and ClassLoader implementations for servers. spring-instrument-tomcat: Tomcat‑specific instrumentation.

Data Access / Integration

spring-jdbc

: JDBC database access support. spring-tx: Programmatic and declarative transaction support. spring-orm: Object‑relational mapping support. spring-oxm: Object‑XML mapping support. spring-jms: Java Message Service support.

Web

spring-web

: Basic web integration features. spring-webmvc: Servlet‑based MVC framework. spring-webmvc-portlet: Portlet‑based MVC implementation. spring-websocket: WebSocket functionality.

Test & Messaging

spring-test

: Testing utilities, JUnit and mock support. spring-messaging: Support for messaging architectures and protocols.

Knowing exactly which JAR each Spring module requires dramatically reduces the chance of errors. Using Spring Boot can further simplify dependency management.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

BackendJavaspringdependency managementModulesJAR
Senior Brother's Insights
Written by

Senior Brother's Insights

A public account focused on workplace, career growth, team management, and self-improvement. The author is the writer of books including 'SpringBoot Technology Insider' and 'Drools 8 Rule Engine: Core Technology and Practice'.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.