Difference between JavaBeans and Enterprise JavaBeans
* JavaBeans are components built in Java that can be used on any tier in an application. They often thought of in relationship to servlets, and as GUI components.
* Enterprise JavaBeans are specials, server-side components used for building the business logic and data access functionality of an application.

Why use EJBs?
Even though EJBs are difficult to understand for novice, it is a powerful technology. It is scalable and flexible. The EJBs share the following tasks:
* Client Communication
* Session State Management
* Transaction Management
* Database Connection Management
* User Authentication and Role-based Authorization
* Asynchronous Messaging
* Application Server Administration

Types of EJBs
1. Session Bean (Stateless and Stateful)
2. Entity Bean
3. Message-Driven Bean