Before going to read this post, please read my previous posts about JMS basics. And also please go through my previous post about “JMS Architecture”.
In this post, we are going to discuss about JMS 1.x and 2.x API details.
Table of Contents
JMS API 1.0 Overview
JMS API V.1.0/1.0.1/1.02 is also known as Legacy API. It is not recommended to use this API to implement Messaging system.
JMS API Version 1.0 is divided into the following two categories to deal with available two JMS Messaging Models:
- P2P Messaging Model API
- Pub/Sub Messaging Model API
P2P Messaging Model API:
JMS API has provided a set of API with QueueXXX name to support P2P (Point-To-Point) Messaging model because P2P uses Queue as its destination.
- QueueConnectionFactory
- QueueConnection
- QueueSession
- Queue
- Message
- QueueReceiver
- QueueSender
- JMSException
Pub/Sub Messaging Model API:
JMS API has provided another set of API with TopicXXX name to support Pub/Sub Messaging model because pub/sub uses Topic as its destination.
- TopicConnectionFactory
- TopicConnection
- TopicSession
- Topic
- Message
- TopicSubscriber
- TopicPublisher
- JMSException
As it is deprecated and also not recommended to use in our applications, I am not going to give any code examples for this API.
JMS API 1.1 Overview
JMS V.1.1 API is also known as Classic API.To avoid all these confusions – two different set of APIs, JMS V.1.1 API has introduced only one common API to develop both Messaging models very easily.
- ConnectionFactory
- Connection
- Destination
- Message
- MessageConsumer
- MessageProducer
- JMSException
JMS API 2.0 Overview
After a decade of JMS V.1.1 version release, JMS API had updated to V.2.0 as part of Java EE 7 release. This new JMS V.2.0 API is also known as Simplified API.
JMS 2.0 has improved previous version to reduce the creation of more objects, to provided new set of methods to ease of development and also to support Java EE new features like Annotations and Generics. It also renamed some interface names for better readability and to avoid confusions.
- ConnectionFactory
- JMSContext
- Destination
- Message
- JMSConsumer
- JMSProducer
- JMSRuntimeException
JMS API Summary:
That’s it all about JMS API Overview. We will discuss some more JMS Concepts in my coming posts.
Please drop me a comment if you like my post or have any issues/suggestions.
Is there any description of jms 1.0.2?
Really really hats off to sir for such an amazing series of articles
JMS API v2.0 Looks like there is a small mistake in Diagram. JMS Producer sends to destination and JMS Consumer receives from destination.
Really appreciate the way u have explained the Evolution of JMS ApI.
I have been following Journaldev since very long time now and I highly recommend this site to my friends, Ramababu I really appreciate your time and your detailed explanation you give for every topic you blog.
superb…