Clase CuentaBancariaHome
package com.osmosislatina.ejb.cuenta; import java.util.Collection; import java.rmi.RemoteException; import javax.ejb.*; |
public interface CuentaBancariaHome extends EJBHome { |
public CuentaBancaria create(String id, String nombre, String apellido, double saldo) throws RemoteException, CreateException; public CuentaBancaria findByPrimaryKey(String id) throws FinderException, RemoteException; public Collection findPorApellido(String apellido) throws FinderException, RemoteException; public Collection findEnRango(double inferior, double superior) throws FinderException, RemoteException; } |
Como todo otro "Home Interface" para un EJB, se hereda ("inherit") el comportamiento de la clase
EJBHome
.El primer método definido es
create
, mismo que es utilizado al generar una instancia del EJB, sin embargo, a diferencia del ejemplo anterior ("Session Bean") su puede notar que este método toma 4 parámetros, los cuales son proporcionados por el cliente.(JSP/Servlet/Applet)Posteriormente se definen los métodos de búsqueda ("finders") que caracterizan a un "Entity Bean", el primero de estos
findByPrimaryKey
realiza una búsqueda por el EJB a través de un identificador inequívoco ("Primary Key") que generalmente coincide con aquel de la Base de Datos.Los métodos
findPorApellido
yfindEnRango
son dos métodos creados para realizar búsquedas especificas de EJB's, el primero realiza búsquedas en base a apellido, mientras el otro realiza búsquedas de acuerdo a los rangos de saldo de cada cuenta.También se puede notar que estos últimos métodos tienen como parámetro de retorno
Collection
, esto se debe a que en las búsquedas puede resultar más de un EJB con las características indicadas.