An entity bean represents persistent data stored in one row of a database table.. When an entity bean is created, the data is written to the appropriate database table row, and if th
Trang 2 An entity bean represents persistent data stored in one row of a database table
When an entity bean is created, the data is written to the
appropriate database table row, and if the data in an entity bean
is updated, the data in the appropriate database table row is also updated
Entity beans differ from session beans in several ways.
Entity beans are persistent: entity bean's state exists beyond the lifetime of the application
allow shared access: may be shared by multiple clients
have primary keys: unique object identifier
Trang 3When to Use Entity
Trang 4Types of persistent management
Bean-Managed Persistence
the bean developer takes responsibility for
persistent storage in attributes
Container-Managed Persistence 1.1
persistent attributes are defined as attributes of the bean class and given in the deployment descriptor
Container-Managed Persistence 2.0/2.1
The bean developer works with an abstract bean class
defines abstract access methods for reading and writing of attributes (During deployment the EJB container generates a derived class that implements all the abstract methods )
Trang 5Constitution of a entity bean
Enterprise Bean class:
provides the implementation for the business methods, finder methods, home methods
Primary key class
makes it possible to identify all entity bean identities uniquely
Deployment Descriptor:
This configuration document defines the bean's runtime
attributes, such as its transaction or security attributes
Helper classes
Trang 6Remote Interface
a method in the enterprise bean class
interface must be identical to the signatures of the corresponding methods in the enterprise bean
Trang 7Home Interface
defines the methods that allow a client
to create and find an entity bean
create Method
has the same number and types of arguments as its
matching ejbCreate method in the enterprise bean
class
returns the remote interface type of the enterprise bean
The throws clause includes the exceptions specified by the throws clause of the corresponding ejbCreate and ejbPostCreate methods
The throws clause includes the javax.ejb.CreateException
& java.rmi.RemoteException
Trang 8Entity bean creation
Trang 9Home Interface
finder Method
Every finder method in the home interface corresponds to a
finder method in the entity bean class
The name of a finder method in the home interface begins with find, whereas the corresponding name in the entity bean class begins with ejbFind
The number and types of arguments must match those
of the corresponding method in the entity bean class
The return type is the entity bean's remote interface
type, or a collection of those types
The exceptions in the throws clause include those of the corresponding method in the entity bean class
The throws clause contains the
javax.ejb.FinderException & java.rmi.RemoteException
Trang 10Home Interface
finder Method in bean class
All finder methods must begin with ejbFind
You must have at least one finder method, called ejbFindByPrimaryKey.
You can have many different finder methods, each with different names and different parameters
A finder method must return either the primary
key for the entity bean it finds or a collection of
primary keys if it finds more than one
Trang 11 For example, in the SavingsAccountBean class the name
is ejbHomeChargeForLowBalance, but in the SavingsAccountHome interface the name is chargeForLowBalance
The throws clause contains the
java.rmi.RemoteException
Trang 12BMP guidelines
Trang 13BMP guidelines
Trang 14BMP guidelines
Trang 15BMP guidelines
Trang 17Bean-DBMS synchronization
Trang 18CMP Entity Beans
CMP Entity Beans Are Subclassed
The container generates the JDBC code by
subclassing your entity bean class.
CMP Entity Beans Have No Declared Fields
CMP Entity Beans Have a Query Language
CMP Entity Beans Can Have ejbSelect() Methods
Trang 19Bean instance Pooling
Trang 20CMP Guidelines
Trang 21CMP Guidelines
Trang 22CMP Guidelines