The Spring Framework

#

# Spring Framework API 2.5

This document is the API specification for the Spring Framework v2.5.

See:
Description

Packages
org.springframework.aop: Core Spring AOP interfaces, built on AOP Alliance AOP interoperability interfaces.
org.springframework.aop.aspectj: AspectJ integration package.
org.springframework.aop.aspectj.annotation: Classes enabling AspectJ 5 @Annotated classes to be used in Spring AOP.
org.springframework.aop.aspectj.autoproxy: Base classes enabling auto-proxying based on AspectJ.
org.springframework.aop.config: Support package for declarative AOP configuration, with XML schema being the primary configuration format.
org.springframework.aop.framework: Package containing Spring's basic AOP infrastructure, compliant with the AOP Alliance interfaces.
org.springframework.aop.framework.adapter: SPI package allowing Spring AOP framework to handle arbitrary advice types.
org.springframework.aop.framework.autoproxy: Bean post-processors for use in ApplicationContexts to simplify AOP usage by automatically creating AOP proxies without the need to use a ProxyFactoryBean.
org.springframework.aop.framework.autoproxy.target: Generic support classes for target source creation.
org.springframework.aop.interceptor: Provides miscellaneous interceptor implementations.
org.springframework.aop.scope: Support for AOP-based scoping of target objects, with configurable backend.
org.springframework.aop.support: Convenience classes for using Spring's AOP API.
org.springframework.aop.support.annotation: Annotation support for AOP pointcuts.
org.springframework.aop.target: This package contains implementations of the org.springframework.aop.TargetSource interface.
org.springframework.aop.target.dynamic: Support for AOP-based refreshing of target objects.
org.springframework.beans: This package contains interfaces and classes for manipulating Java beans.
org.springframework.beans.annotation: Support package for beans-style handling of Java 5 annotations.
org.springframework.beans.factory: The core package implementing Spring's lightweight Inversion of Control (IoC) container.
org.springframework.beans.factory.access: Helper infrastructure to locate and access bean factories.
org.springframework.beans.factory.access.el: Support classes for accessing a Spring BeanFactory from Unified EL.
org.springframework.beans.factory.annotation: Support package for annotation-driven bean configuration.
org.springframework.beans.factory.config: SPI interfaces and configuration-related convenience classes for bean factories.
org.springframework.beans.factory.generic: Support package for generic BeanFactory access, leveraging Java 5 generics in the accessor API.
org.springframework.beans.factory.parsing: Support infrastructure for bean definition parsing.
org.springframework.beans.factory.serviceloader: Support package for the JDK 1.6 ServiceLoader facility.
org.springframework.beans.factory.support: Classes supporting the `org.springframework.beans.factory` package.
org.springframework.beans.factory.wiring: Mechanism to determine bean wiring metadata from a bean instance.
org.springframework.beans.factory.xml: Contains an abstract XML-based `BeanFactory` implementation, including a standard "spring-beans" DTD.
org.springframework.beans.propertyeditors: Properties editors used to convert from String values to object types such as java.util.Properties.
org.springframework.beans.support: Classes supporting the org.springframework.beans package, such as utility classes for sorting and holding lists of beans.
org.springframework.cache.ehcache: Support classes for the open source cache EHCache, allowing to set up an EHCache CacheManager and Caches as beans in a Spring context.
org.springframework.context: This package builds on the beans package to add support for message sources and for the Observer design pattern, and the ability for application objects to obtain resources using a consistent API.
org.springframework.context.access: Helper infrastructure to locate and access shared application contexts.
org.springframework.context.annotation: Annotation support for context configuration, including classpath scanning for autowire candidates.
org.springframework.context.config: Support package for advanced application context configuration, with XML schema being the primary configuration format.
org.springframework.context.event: Support classes for application events, like standard context events.
org.springframework.context.i18n: Abstraction for determining the current Locale, plus global holder that exposes a thread-bound Locale.
org.springframework.context.support: Classes supporting the org.springframework.context package, such as abstract base classes for ApplicationContext implementations and a MessageSource implementation.
org.springframework.context.weaving: Load-time weaving support for a Spring application context, building on Spring's `LoadTimeWeaver` abstraction.
org.springframework.core: Provides basic classes for exception handling and version detection, and other core helpers that are not specific to any part of the framework.
org.springframework.core.annotation: Core support package for Java 5 annotations.
org.springframework.core.enums: Interfaces and classes for type-safe enum support on JDK >= 1.3.
org.springframework.core.io: Generic abstraction for (file-based) resources, used throughout the framework.
org.springframework.core.io.support: Support classes for Spring's resource abstraction.
org.springframework.core.style: Support for styling values as Strings, with ToStringCreator as central class.
org.springframework.core.task: This package defines Spring's core TaskExecutor abstraction, and provides SyncTaskExecutor and SimpleAsyncTaskExecutor implementations.
org.springframework.core.task.support: Support classes for Spring's TaskExecutor abstraction.
org.springframework.core.type: Core support package for type introspection.
org.springframework.core.type.classreading: Core support package for type introspection through ASM-based class reading.
org.springframework.core.type.filter: Core support package for type filtering (e.g. for classpath scanning).
org.springframework.dao: Exception hierarchy enabling sophisticated error handling independent of the data access approach in use.
org.springframework.dao.annotation: Annotation support for DAOs.
org.springframework.dao.support: Support classes for DAO implementations, providing miscellaneous utility methods.
org.springframework.ejb.access: This package contains classes that allow easy access to EJBs.
org.springframework.ejb.config: Support package for EJB/J2EE-related configuration, with XML schema being the primary configuration format.
org.springframework.ejb.interceptor: Support classes for EJB 3 Session Beans and Message-Driven Beans, performing injection of Spring beans through an EJB 3 interceptor that processes Spring's `@Autowired` annotation.
org.springframework.ejb.support: Base classes to make implementing EJB 2.x beans simpler and less error-prone, as well as guaranteeing a Spring BeanFactory is available to such EJBs.
org.springframework.instrument: Support package for class instrumentation.
org.springframework.instrument.classloading: Support package for load time weaving based on class loaders, as required by JPA providers (but not JPA-specific).
org.springframework.instrument.classloading.glassfish: Support for class instrumentation on GlassFish / Sun Application Server.
org.springframework.instrument.classloading.oc4j: Support for class instrumentation on Oracle OC4J.
org.springframework.instrument.classloading.tomcat: Support for class instrumentation on Apache Tomcat.
org.springframework.instrument.classloading.weblogic: Support for class instrumentation on BEA WebLogic 10.
org.springframework.jca.cci: This package contains Spring's support for the Common Client Interface (CCI), as defined by the J2EE Connector Architecture.
org.springframework.jca.cci.connection: Provides a utility class for easy ConnectionFactory access, a PlatformTransactionManager for local CCI transactions, and various simple ConnectionFactory proxies/adapters.
org.springframework.jca.cci.core: Provides the core JCA CCI support, based on CciTemplate and its associated callback interfaces.
org.springframework.jca.cci.core.support: Classes supporting the `org.springframework.jca.cci.core` package.
org.springframework.jca.cci.object: The classes in this package represent EIS operations as threadsafe, reusable objects.
org.springframework.jca.context: Integration package that allows for deploying a Spring application context as a JCA 1.5 compliant RAR file.
org.springframework.jca.endpoint: This package provides a facility for generic JCA message endpoint management.
org.springframework.jca.support: Provides generic support classes for JCA usage within Spring, mainly for local setup of a JCA ResourceAdapter and/or ConnectionFactory.
org.springframework.jca.work: Convenience classes for scheduling based on the JCA 1.5 WorkManager facility, as supported within JCA 1.5 ResourceAdapters.
org.springframework.jca.work.glassfish: Convenience package for obtaining a GlassFish JCA WorkManager for use in web applications.
org.springframework.jca.work.jboss: Convenience package for obtaining a JBoss JCA WorkManager for use in web applications.
org.springframework.jdbc: The classes in this package make JDBC easier to use and reduce the likelihood of common errors.
org.springframework.jdbc.core: Provides the core JDBC framework, based on JdbcTemplate and its associated callback interfaces and helper objects.
org.springframework.jdbc.core.metadata: Context metadata abstraction for the configuration and execution of a stored procedure call.
org.springframework.jdbc.core.namedparam: JdbcTemplate variant with named parameter support.
org.springframework.jdbc.core.simple: Simplification layer over JdbcTemplate for Java 5 and above.
org.springframework.jdbc.core.support: Classes supporting the `org.springframework.jdbc.core` package.
org.springframework.jdbc.datasource: Provides a utility class for easy DataSource access, a PlatformTransactionManager for a single DataSource, and various simple DataSource implementations.
org.springframework.jdbc.datasource.lookup: Provides a strategy for looking up JDBC DataSources by name.
org.springframework.jdbc.object: The classes in this package represent RDBMS queries, updates, and stored procedures as threadsafe, reusable objects.
org.springframework.jdbc.support: Support classes for the JDBC framework, used by the classes in the jdbc.core and jdbc.object packages.
org.springframework.jdbc.support.incrementer: Provides a support framework for incrementing database table values via sequences, with implementations for various databases.
org.springframework.jdbc.support.lob: Provides a stategy interface for Large OBject handling, with implementations for various databases.
org.springframework.jdbc.support.nativejdbc: Provides a mechanism for extracting native implementations of JDBC interfaces from wrapper objects that got returned from connection pools.
org.springframework.jdbc.support.rowset: Provides a convenient holder for disconnected result sets.
org.springframework.jdbc.support.xml: Abstraction for handling fields of SQLXML data type.
org.springframework.jms: This package contains integration classes for JMS, allowing for Spring-style JMS access.
org.springframework.jms.config: Support package for declarative messaging configuration, with XML schema being the primary configuration format.
org.springframework.jms.connection: Provides a PlatformTransactionManager implementation for a single JMS ConnectionFactory, and a SingleConnectionFactory adapter.
org.springframework.jms.core: Core package of the JMS support.
org.springframework.jms.core.support: Classes supporting the org.springframework.jms.core package.
org.springframework.jms.listener: This package contains the base message listener container facility.
org.springframework.jms.listener.adapter: Message listener adapter mechanism that delegates to target listener methods, converting messages to appropriate message content types (such as String or byte array) that get passed into listener methods.
org.springframework.jms.listener.endpoint: This package provides JCA-based endpoint management for JMS message listeners.
org.springframework.jms.listener.serversession: This package contains the ServerSessionMessageListenerContainer implementation, based on the standard JMS ServerSessionPool API.
org.springframework.jms.remoting: Remoting classes for transparent Java-to-Java remoting via a JMS provider.
org.springframework.jms.support: This package provides generic JMS support classes, to be used by higher-level classes like JmsTemplate.
org.springframework.jms.support.converter: Provides a MessageConverter abstraction to convert between Java objects and JMS messages.
org.springframework.jms.support.destination: Support classes for Spring's JMS framework.
org.springframework.jmx: This package contains Spring's JMX support, which includes registration of Spring-managed beans as JMX MBeans as well as access to remote JMX MBeans.
org.springframework.jmx.access: Provides support for accessing remote MBean resources.
org.springframework.jmx.export: This package provides declarative creation and registration of Spring-managed beans as JMX MBeans.
org.springframework.jmx.export.annotation: JDK 1.5+ annotations for MBean exposure.
org.springframework.jmx.export.assembler: Provides a strategy for MBeanInfo assembly.
org.springframework.jmx.export.metadata: Provides generic JMX metadata classes and basic support for reading JMX metadata in a provider-agnostic manner.
org.springframework.jmx.export.naming: Provides a strategy for ObjectName creation.
org.springframework.jmx.export.notification: Provides supporting infrastructure to allow Spring-created MBeans to send JMX notifications.
org.springframework.jmx.support: Contains support classes for connecting to local and remote `MBeanServer`s and for exposing an `MBeanServer` to remote clients.
org.springframework.jndi: The classes in this package make JNDI easier to use, facilitating the accessing of configuration stored in JNDI, and provide useful superclasses for JNDI access classes.
org.springframework.jndi.support: Support classes for JNDI usage, including a JNDI-based BeanFactory implementation.
org.springframework.mail: Spring's generic mail infrastructure.
org.springframework.mail.javamail: JavaMail support for Spring's mail infrastructure.
org.springframework.metadata: Package defining a facade for accessing source-level metadata attributes at runtime.
org.springframework.metadata.commons: Attributes wrapper for Commons Attributes.
org.springframework.mock.jndi: The simplest implementation of the JNDI SPI that could possibly work.
org.springframework.mock.web: A comprehensive set of Servlet API mock objects, targeted at usage with Spring's web MVC framework.
org.springframework.mock.web.portlet: A comprehensive set of Portlet API mock objects, targeted at usage with Spring's web MVC framework.
org.springframework.orm: Root package for Spring's O/R Mapping integration classes.
org.springframework.orm.hibernate3: Package providing integration of Hibernate3 with Spring concepts.
org.springframework.orm.hibernate3.annotation: Support package for the Hibernate3 Annotation add-on, which supports EJB3-compliant JDK 1.5+ annotations for mappings.
org.springframework.orm.hibernate3.support: Classes supporting the `org.springframework.orm.hibernate3` package.
org.springframework.orm.ibatis: Package providing integration of iBATIS Database Layer with Spring concepts.
org.springframework.orm.ibatis.support: Classes supporting the `org.springframework.orm.ibatis` package.
org.springframework.orm.jdo: Package providing integration of JDO (Java Date Objects) with Spring concepts.
org.springframework.orm.jdo.support: Classes supporting the `org.springframework.orm.jdo` package.
org.springframework.orm.jpa: Package providing integration of JPA (Java Persistence API) with Spring concepts.
org.springframework.orm.jpa.persistenceunit: Internal support for managing JPA persistence units.
org.springframework.orm.jpa.support: Classes supporting the `org.springframework.orm.jpa` package.
org.springframework.orm.jpa.vendor: Support classes for adapting to specific JPA vendors.
org.springframework.orm.toplink: Package providing integration of Oracle TopLink with Spring concepts.
org.springframework.orm.toplink.support: Classes supporting the `org.springframework.orm.toplink` package.
org.springframework.remoting: Exception hierarchy for Spring's remoting infrastructure, independent of any specific remote method invocation system.
org.springframework.remoting.caucho: This package provides remoting classes for Caucho's Hessian and Burlap protocols: a proxy factory for accessing Hessian/Burlap services, and an exporter for making beans available to Hessian/Burlap clients.
org.springframework.remoting.httpinvoker: Remoting classes for transparent Java-to-Java remoting via HTTP invokers.
org.springframework.remoting.jaxrpc: Remoting classes for Web Services via JAX-RPC.
org.springframework.remoting.jaxrpc.support: Support for specific JAX-RPC providers.
org.springframework.remoting.jaxws: Remoting classes for Web Services via JAX-WS (the successor of JAX-RPC), as included in Java 6 and Java EE 5.
org.springframework.remoting.rmi: Remoting classes for conventional RMI and transparent remoting via RMI invokers.
org.springframework.remoting.soap: SOAP-specific exceptions and support classes for Spring's remoting subsystem.
org.springframework.remoting.support: Generic support classes for remoting implementations.
org.springframework.scheduling: General exceptions for Spring's scheduling support, independent of any specific scheduling system.
org.springframework.scheduling.backportconcurrent: Scheduling convenience classes for the JSR-166 backport Executor mechanism, allowing to set up a ThreadPoolExecutor or ScheduledThreadPoolExecutor as bean in a Spring context.
org.springframework.scheduling.commonj: Convenience classes for scheduling based on the CommonJ WorkManager/TimerManager facility, as supported by IBM WebSphere 6.0+ and BEA WebLogic 9.0+.
org.springframework.scheduling.concurrent: Scheduling convenience classes for the JDK 1.5+ Executor mechanism in the `java.util.concurrent` package, allowing to set up a ThreadPoolExecutor or ScheduledThreadPoolExecutor as bean in a Spring context.
org.springframework.scheduling.quartz: Support classes for the open source scheduler Quartz, allowing to set up Quartz Schedulers, JobDetails and Triggers as beans in a Spring context.
org.springframework.scheduling.support: Generic support classes for scheduling.
org.springframework.scheduling.timer: Scheduling convenience classes for the JDK Timer, allowing to set up Timers and ScheduledTimerTasks as beans in a Spring context.
org.springframework.scripting: Core interfaces for Spring's scripting support.
org.springframework.scripting.bsh: Package providing integration of BeanShell into Spring's scripting infrastructure.
org.springframework.scripting.config: Support package for Spring's dynamic language machinery, with XML schema being the primary configuration format.
org.springframework.scripting.groovy: Package providing integration of Groovy into Spring's scripting infrastructure.
org.springframework.scripting.jruby: Package providing integration of JRuby into Spring's scripting infrastructure.
org.springframework.scripting.support: Support classes for Spring's scripting package.
org.springframework.stereotype: Annotations denoting the roles of types or methods in the overall architecture (at a conceptual, rather than implementation, level).
org.springframework.test: Superclasses for tests requiring Spring application contexts, including support for transactional execution of test cases, with automatic rollback on completion.
org.springframework.test.annotation: Support classes for annotation-driven tests.
org.springframework.test.context: This package contains the Spring TestContext Framework which provides annotation-driven unit and integration testing support that is agnostic of the actual testing framework in use.
org.springframework.test.context.junit38: Support classes for ApplicationContext-based and transactional tests run with JUnit 3.8 and the Spring TestContext Framework.
org.springframework.test.context.junit4: Support classes for ApplicationContext-based and transactional tests run with JUnit 4.4 and the Spring TestContext Framework.
org.springframework.test.context.support: Support classes for the Spring TestContext Framework.
org.springframework.test.context.testng: Support classes for ApplicationContext-based and transactional tests run with TestNG and the Spring TestContext Framework.
org.springframework.test.context.transaction: Transactional support classes for the Spring TestContext Framework.
org.springframework.test.jdbc: Support classes for tests based on JDBC.
org.springframework.test.jpa: Support classes for tests based on the Java Persistence API.
org.springframework.test.util: Helper classes for unit tests with reflective needs.
org.springframework.test.web: Helper classes for unit tests based on Spring's web support.
org.springframework.transaction: Exception hierarchy for Spring's transaction infrastructure, independent of any specific transaction management system.
org.springframework.transaction.annotation: JDK 1.5+ annotation for transaction demarcation.
org.springframework.transaction.config: Support package for declarative transaction configuration, with XML schema being the primary configuration format.
org.springframework.transaction.interceptor: AOP-based solution for declarative transaction demarcation.
org.springframework.transaction.jta: Transaction SPI implementation for JTA.
org.springframework.transaction.support: Support classes for the org.springframework.transaction package.
org.springframework.ui: Generic support for UI layer concepts.
org.springframework.ui.context: Contains classes defining the application context subinterface for UI applications.
org.springframework.ui.context.support: Classes supporting the org.springframework.ui.context package.
org.springframework.ui.freemarker: Support classes for setting up FreeMarker within a Spring application context.
org.springframework.ui.jasperreports: Support classes for JasperReports.
org.springframework.ui.velocity: Support classes for setting up Velocity within a Spring application context.
org.springframework.util: Miscellaneous utility classes, such as String manipulation utilities, a Log4J configurer, and a state holder for paged lists of objects.
org.springframework.util.comparator: Useful generic `java.util.Comparator` implementations, such as an invertible comparator and a compound comparator.
org.springframework.util.xml: Miscellaneous utility classes for XML parsing and transformation, such as error handlers that log warnings via Commons Logging.
org.springframework.validation: Provides data binding and validation functionality, for usage in business and/or UI layers.
org.springframework.web: Common, generic interfaces that define minimal boundary points between Spring's web infrastructure and other framework modules.
org.springframework.web.bind: Provides web-specific data binding functionality.
org.springframework.web.bind.annotation: Annotations for binding requests to controllers and handler methods as well as for binding request parameters to method arguments.
org.springframework.web.bind.annotation.support: Support classes for web annotation processing.
org.springframework.web.bind.support: Support classes for web data binding.
org.springframework.web.context: Contains a variant of the application context interface for web applications, and the ContextLoaderListener that bootstraps a root web application context.
org.springframework.web.context.request: Support for generic request context holding, in particular for scoping of application objects per HTTP request or HTTP session.
org.springframework.web.context.support: Classes supporting the `org.springframework.web.context` package, such as WebApplicationContext implementations and various utility classes.
org.springframework.web.filter: Provides generic filter base classes allowing for bean-style configuration.
org.springframework.web.jsf: Support classes for integrating a JSF web tier with a Spring middle tier which is hosted in a Spring root WebApplicationContext.
org.springframework.web.jsf.el: Support classes for integrating a JSF 1.2 web tier with a Spring middle tier which is hosted in a Spring root WebApplicationContext.
org.springframework.web.multipart: Multipart resolution framework for handling file uploads.
org.springframework.web.multipart.commons: MultipartResolver implementation for Jakarta Commons FileUpload.
org.springframework.web.multipart.support: Support classes for the multipart resolution framework.
org.springframework.web.portlet: Provides JSR-168 portlets that integrate with the application context infrastructure, and the core interfaces and classes for the Portlet variant of Spring's web MVC framework.
org.springframework.web.portlet.bind: Provides portlet-specific data binding functionality.
org.springframework.web.portlet.context: Support for Spring's application context concept in a portlet environment, including ApplicationContext implementations and various utility classes.
org.springframework.web.portlet.handler: Provides standard HandlerMapping implementations, including abstract base classes for custom implementations.
org.springframework.web.portlet.multipart: Multipart resolution framework for handling file uploads.
org.springframework.web.portlet.mvc: Standard controller implementations for the portlet MVC framework that comes with Spring.
org.springframework.web.portlet.mvc.annotation: Support package for annotation-based Portlet MVC controllers.
org.springframework.web.portlet.util: Miscellaneous portlet utility classes.
org.springframework.web.servlet: Provides servlets that integrate with the application context infrastructure, and the core interfaces and classes for the Spring web MVC framework.
org.springframework.web.servlet.handler: Provides standard HandlerMapping implementations, including abstract base classes for custom implementations.
org.springframework.web.servlet.handler.metadata: This package enables automatic web controller targeting.
org.springframework.web.servlet.i18n: Locale support classes for Spring's web MVC framework.
org.springframework.web.servlet.mvc: Standard controller implementations for the servlet MVC framework that comes with Spring.
org.springframework.web.servlet.mvc.annotation: Support package for annotation-based Servlet MVC controllers.
org.springframework.web.servlet.mvc.multiaction: Package allowing MVC Controller implementations to handle requests at method rather than class level.
org.springframework.web.servlet.mvc.support: Support package for MVC controllers.
org.springframework.web.servlet.mvc.throwaway: Throwaway command controllers are a WebWork/Maverick-style alternative to Spring's default Servlet/Struts-style Controller approach.
org.springframework.web.servlet.support: Support classes for Spring's web MVC framework.
org.springframework.web.servlet.tags: Spring's JSP standard tag library for JSP 1.2+.
org.springframework.web.servlet.tags.form: Spring's form tag library for JSP 1.2+.
org.springframework.web.servlet.theme: Theme support classes for Spring's web MVC framework.
org.springframework.web.servlet.view: Provides standard View and ViewResolver implementations, including abstract base classes for custom implementations.
org.springframework.web.servlet.view.document: Support classes for document generation, providing View implementations for PDF and Excel.
org.springframework.web.servlet.view.freemarker: Support classes for the integration of FreeMarker as Spring web view technology.
org.springframework.web.servlet.view.jasperreports: Support classes for the integration of JasperReports as Spring web view technology.
org.springframework.web.servlet.view.tiles: Support classes for the integration of Tiles (included in Struts) as Spring web view technology.
org.springframework.web.servlet.view.tiles2: Support classes for the integration of Tiles2 (the standalone version of Tiles) as Spring web view technology.
org.springframework.web.servlet.view.velocity: Support classes for the integration of Velocity as Spring web view technology.
org.springframework.web.servlet.view.xslt: Support classes for XSLT, providing a View implementation for XSLT stylesheets.
org.springframework.web.struts: Support classes for integrating a Struts web tier with a Spring middle tier which is typically hosted in a Spring root WebApplicationContext.
org.springframework.web.util: Miscellaneous web utility classes, such as HTML escaping, log4j initialization, and cookie handling.

This document is the API specification for the Spring Framework v2.5.

For further API reference and developer documentation, see the Spring Framework reference documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

If you are interested in commercial training, consultancy, and support for the Spring Framework, SpringSource (formerly known as Interface21) provides such commercial support.

The Spring Framework

Copyright © 2002-2008 The Spring Framework.