Difference between session bean entity Message driven bean?

Session beans are a type of enterprise JavaBeans (EJBs) that are used to encapsulate business logic and manage the state of a business process. Session beans are lightweight and stateful, meaning that they can hold information about the current user or state of a process across multiple requests. Entity beans are also a type of EJBs, but they are used to represent persistent data in a database, not as part of a stateful business process. Entity beans are mapped to database tables and represent data that is stored in the database. For example, an entity bean might represent a customer or product table in the database. Message-driven beans are yet another type of EJBs that are used to respond to incoming messages. Message-driven beans are event-driven and listen for messages in a message queue. When a message is received, the message-driven bean processes the message and performs an action, such as updating a database or responding to a user request.