What is J2EE and how does it relate to EJBs?
J2EE is a standard architecture to define and support an n-tier application programming model for building enterprise applications. It’s based on standard design practices and patterns that simplify the application development by decoupling the components between the different tiers of an application. The three main tiers that are defined are the thin client, the business logic layer, and the data source layer. J2EE also encompasses security, performance, and integration issues with external (non-Java) environments. Enterprise JavaBeans define the server-side component model used by J2EE to implement business logic and are the crux of the J2EE Platform. EJB design defines how to write distributed Java components that run in a J2EE-compliant application server. EJBs simplify development of middleware components by enabling them to be transactional, scalable, and portable. EJB components run only in the context of a J2EE application server, which acts as the “operating system” of the ent