Entity Bean
From Wikipedia, the free encyclopedia
Please help improve this article or section by expanding it. Further information might be found on the talk page or at requests for expansion. (March 2008) |
An Entity Bean is a type of Enterprise JavaBean, a server-side J2EE component, that represents persistent data maintained in a database. An entity bean can manage its own persistence (Bean managed persistence) or can delegate this function to its EJB Container (Container managed persistence). An entity bean is identified by a primary key. If the container in which an entity bean is hosted crashes, the entity bean, its primary key, and any remote references survive the crash.
In EJB 3.0, entity beans were superseded by the Java Persistence API.
Entity Beans before EJB 3.0 should not be used in great numbers[1] because each entity bean was in fact a RMI stub with its own RMI connection to the EJB server. If you had to obtain 1000 entity beans for a single operation this would result in 1000 internet connections becoming used for the RMI back-end[citation needed]. Since TCP/IP only supports 65536 ports you are essentially limited to using 65536 entity beans at a time. For example, if a client application wanted to monitor the state of 1024 database entries it would take 1024 entity bean references and thus 1024 RMI connections to the EJB server, the EJB server would in turn need to support all 1024 connections from each client application, and would be limited to serving at most 64 client applications at which point all further internet connections would be ignored. These limitations are impossible to over come when using entity beans over RMI.
[edit] References
- ^ Monson-Haefel, Richard [June 1999] (March 2000). "Chapter 2", in Mike Loukides: Enterprise JavaBeans, Second Edition, Melanie Wang, Hanna Dyer, 2nd edition, The Java Series, Sebastopol, CA: O'Reilly & Associates, Inc., p.44. Library of Congress QA76.73.J38 M65 2000. ISBN 1-56592-869-5. “When session beans are used to manage workflow, the number of connections that each client has to the server is substantially reduced, which improves the EJB server's performance”