Let's look now at some of the many features of Spring beyond the core container. These include useful features for implementing enterprise applications—part of Spring's overall service abstraction—and support for implementing objects in languages other than Java.
In this chapter we will focus on the following areas:
Messaging: Spring provides support for sending JMS messages.
Scheduling: Spring provides a scheduling abstraction, including integration with the popular Quartz scheduler.
Mail: Spring provides an abstraction for sending email that simplifies use of JavaMail and makes application code easier to test.
Scripting: Spring allows you to implement objects in scripting languages such as Groovy and Java. Scripted objects enjoy full IoC and AOP support, and can be reloaded without affecting objects that depend on them.
Asynchronous messaging is important in many enterprise applications. Spring provides support for consuming JMS messages, which both simplifies the programming model (compared to direct use of the JMS API) and provides a consistent basis for access to advanced features such as dynamic destinations.
Future versions of Spring will provide support for consuming messages comparable to—but simpler than—Message Driven Beans.
JMS, the Java Message Service, is a messaging standard that allows applications to communicate with each other reliably and asynchronously. Usually referred to as Message-Oriented Middleware or MOM, messaging ...