JMS stands for Java Messaging Service.
JMS is an asynchronous messaging service implemented in Java. Implementing it in Java is quite simple. There’s already a provided library called javax.jms.* where we can create a Message Sender and a Message Receiver. After creating the JMS application, the Webserver ( Glassfish, Websphere.. etc) must also be configured to handle JMS. the JMS factory and the JMS queue must be defined.
Here’s a more detailed explanation in this site:
The JMS message
The JMS message consists of a header and a body. We can set different properties to the header, and select different body message types. Here’s the complete specification of JMS messages.