T - a type variablePK - the primary key for that typepublic class GenericDaoJpa<T,PK extends Serializable> extends Object implements GenericDao<T,PK>
To register this class in your Spring context file, use the following XML.
<bean id="fooDao" class="org.appfuse.dao.hibernate.GenericDaoJpaHibernate">
<constructor-arg value="org.appfuse.model.Foo"/>
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
| Modifier and Type | Field and Description |
|---|---|
protected org.apache.commons.logging.Log |
log
Log variable for all child classes.
|
static String |
PERSISTENCE_UNIT_NAME |
| Constructor and Description |
|---|
GenericDaoJpa(Class<T> persistentClass)
Constructor that takes in a class to see which type of entity to persist.
|
GenericDaoJpa(Class<T> persistentClass,
javax.persistence.EntityManager entityManager)
Constructor that takes in a class to see which type of entity to persist.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
exists(PK id)
Checks for existence of an object of type T using the id arg.
|
T |
get(PK id)
Generic method to get an object based on class and identifier.
|
List<T> |
getAll()
Generic method used to get all objects of a particular type.
|
List<T> |
getAllDistinct()
Gets all records without duplicates.
|
javax.persistence.EntityManager |
getEntityManager() |
void |
reindex()
Generic method to regenerate full text index of the persistent class T
|
void |
reindexAll(boolean async)
Generic method to regenerate full text index of all indexed classes
|
void |
remove(PK id)
Generic method to delete an object
|
void |
remove(T object)
Generic method to delete an object
|
T |
save(T object)
Generic method to save an object - handles both update and insert.
|
List<T> |
search(String searchTerm)
Gets all records that match a search term.
|
protected final org.apache.commons.logging.Log log
public static final String PERSISTENCE_UNIT_NAME
public GenericDaoJpa(Class<T> persistentClass)
persistentClass - the class type you'd like to persistpublic GenericDaoJpa(Class<T> persistentClass, javax.persistence.EntityManager entityManager)
persistentClass - the class type you'd like to persistentityManager - the configured EntityManager for JPA implementation.public javax.persistence.EntityManager getEntityManager()
public List<T> getAll()
getAll in interface GenericDao<T,PK extends Serializable>public List<T> getAllDistinct()
Note that if you use this method, it is imperative that your model classes correctly implement the hashcode/equals methods
getAllDistinct in interface GenericDao<T,PK extends Serializable>public T get(PK id)
get in interface GenericDao<T,PK extends Serializable>id - the identifier (primary key) of the object to getorg.springframework.orm.ObjectRetrievalFailureExceptionpublic boolean exists(PK id)
exists in interface GenericDao<T,PK extends Serializable>id - the id of the entitypublic T save(T object)
save in interface GenericDao<T,PK extends Serializable>object - the object to savepublic void remove(T object)
remove in interface GenericDao<T,PK extends Serializable>object - the object to removepublic void remove(PK id)
remove in interface GenericDao<T,PK extends Serializable>id - the identifier (primary key) of the object to removepublic List<T> search(String searchTerm) throws SearchException
GenericDaosearch in interface GenericDao<T,PK extends Serializable>searchTerm - the term to search forSearchExceptionpublic void reindex()
reindex in interface GenericDao<T,PK extends Serializable>public void reindexAll(boolean async)
reindexAll in interface GenericDao<T,PK extends Serializable>async - true to perform the reindexing asynchronouslyCopyright © 2003-2012. All Rights Reserved.