Java messaging service concepts
Java Messaging Service (JMS) is a Java API for accessing message-oriented middleware systems. JMS is to messaging what JDBC is to database access, in that it abstracts away the vendor-specific aspects of the messaging provider, so that they can be accessed in a vendor-neutral way.
MDBs really are just EJBs that are invoked by the arrival of JMS messages. Because JMS is the backbone of MDBs, it is important to understand the fundamental concepts of JMS. JMS is a powerful messaging structure that can be used by any type of EJB, or any other Java class or application, not just MDBs.
JMS messaging models
There are two types of JMS messaging models: point-to-point and publish-and-subscribe.