The state of Java middleware, Part 2: Enterprise JavaBeans
Learn how Enterprise JavaBeans fits into your enterprise -- and which tools support EJB
By Anil Hemrajani, JavaWorld.com, 04/01/99
- Digg
- Reddit
- SlashDot
- Stumble
- del.icio.us
- Technorati
- dzone
Last month
JavaWorld published the first article in this two-part series, covering the
state of Java middleware. The first article provided an overview of the many features offered and promised by Java middleware; this article focuses
specifically on one of those features: Enterprise JavaBeans (EJB).
By now you've probably heard about EJB, read articles about it, and possibly even written a few enterprise beans yourself.
However, if you're like many people out there, you might not understand the big picture -- despite the fact that working with
EJB is supposed to be extremely simple. Here's a list of questions many developers new to EJB struggle with:
- What are all the features of EJB?
- What tools are available today that support EJB?
- When should I use session beans versus entity beans?
- When to use a stateful session bean versus a statelessone?
- What are the dos and don'ts of EJB development?
- How does EJB relate to JDBC 2.0 (Java Database Connectivity) and the transaction management APIs?
- How does EJB's security work?
- How do complex joins in an existing relational database work with entity bean mapping?
This article addresses these and other common concerns about EJB. It includes examples of how some vendors provide EJB support.
Moreover, this article addresses the following key issues:
- Whydo we need EJB?
- Whowill support EJB?
- Whatexactly is EJB?
- Howdo you develop, deploy, and manage EJB?
- Howdo you integrate EJB with existing systems?
- Wheredoes EJB go from here?
In short, this article describes the current state of EJB and the Java middleware (tools) that support it. Rather than focus
on in-depth coding examples, I devote attention to the more challenging aspects of working with EJB: the design issues and
tools selection. To learn more about nitty-gritty programming with EJB, see the JavaWorld articles in the Resources section below. Furthermore, EJB programming (developing enterprise beans), in my opinion, is the easy part (as Sun intended
it to be); design issues and tools selection are the more challenging aspects of working with EJB.
Note that throughout this article I use the terms Java middleware, application servers, and EJB servers somewhat interchangeably. Marketeers, authors of the EJB (or CORBA/DCOM) specification, and niche developers may see many
distinctions among these terms, but for the purpose of this article they all mean the same thing.
Note also that this article is jam-packed with information on EJB. While it may seem overwhelming, don't be discouraged: EJB
developers typically don't have to deal with all the issues discussed here. In fact, the EJB specifications define several
roles and responsibilities that can be handled by either one person or several people, depending on the size of your project.
Nevertheless, an understanding of the big picture is essential. And remember, developing enterprise beans is actually extremely
simple.
Why do we need EJB?
Ever since the Web began to make the Internet popular and useful for almost everyone (not just the government and students),
new Net technologies (Internet, intranet and extranet) have emerged from all directions and organizations. It is now close
to impossible to keep up with these technologies at the speed they're being introduced.
- Digg
- Reddit
- SlashDot
- Stumble
- del.icio.us
- Technorati
- dzone
Resources
- Visit Sun's EJB home page for articles, specifications, press releases, and links related to EJB http://java.sun.com/products/ejb/
- SunWorldarticle on EJB, designed to help readers determine if this technology is right for their companies. See the IT Architectcolumn "Expanding your server-side toolkit with EJB" http://www.sunworld.com/swol-04-1999/swol-04-itarchitect.html?jw
- The Divya.com Web site provides a complete list of currently available Java application servers and related vendor white papers
http://divya.com/links.html
- Download the free EJB Guide from Nova Labs http://www.nova-labs.com/EJBGuide/EJBGuide.htm
- For CORBA-specific information, visit The Object Management Group's Web site http://www.omg.org/.
- Previous EJB features in JavaWorld
- "Write a session EJB" by Michael Shoffner (Java Step by Step, July 1998) http://www.javaworld.com/javaworld/jw-07-1998/jw-07-step.html
- "Enterprise JavaBeansComing soon to a server near you" by Bryan Morgan (Distributed Objects, June 1998) http://www.javaworld.com/javaworld/jw-06-1998/jw-06-distributed.html
- EJB features on the Java Developer Connection
- "Enterprise JavaBeansWorking with Entity and Session Beans" http://developer.java.sun.com/developer/technicalArticles/EBeans/SampApp/
- "An Introduction to Enterprise JavaBeans Technology" http://developer.java.sun.com/developer/technicalArticles/EBeans/