Enterprise JavaBeans (EJB)
Definition - What does Enterprise JavaBeans (EJB) mean?
Enterprise JavaBeans (EJB) is the server-side and platform-independent Java application programming interface (API) for Java Platform, Enterprise Edition (Java EE). EJB is used to simplify the development of large distributed applications.
The EJB container handles transaction management and security authorization, allowing a bean developer to concentrate on business issues. Additionally, a client developer can concentrate on the presentation layer without focusing on the EJB business logic. This allows for a thinner client, which is beneficial for small devices running a distributed application.
Techopedia explains Enterprise JavaBeans (EJB)
Because EJB is portable, an application developer may easily build applications on top of existing beans. New applications run on any Java Enterprise Edition (EE) compliant server using standard APIs.
Ensuring that an application meets required scalability, data integrity and diverse application client requirements is vital when evaluating EJB in a distributed application development. EJB is not always suited to distributed application development. Thus, project requirements must be clearly communicated and understood prior to using EJB, while considering the following EJB limitations:
- The EJB specification is an inconvenient tool because of its vast documentation and complex nature. A good developer must take the time to read and study the EJB specification - even if some information is irrelevant to EJB code writing and deployment.
- EJB requires more development and debugging resources than basic Java coding, as it is difficult to determine whether a bug is inside the code or EJB container.
- EJB implementation is complex. For example, a developer may write 10 or more files (versus one) for a simple application, such as printing simple text like "hello world."
- EJB specification changes result in obsolete code. Thus, making code compatible with a new EJB container requires extra effort and higher costs.