com.germinus.merlin.dao
Class GenericDaoHibernate<T,PK extends java.io.Serializable>

java.lang.Object
  extended by org.springframework.dao.support.DaoSupport
      extended by org.springframework.orm.hibernate3.support.HibernateDaoSupport
          extended by com.germinus.merlin.dao.GenericDaoHibernate<T,PK>
All Implemented Interfaces:
IGenericDao<T,PK>, org.springframework.beans.factory.InitializingBean
Direct Known Subclasses:
AssignmentDao, CourseDao, CourseDaoJpa

public abstract class GenericDaoHibernate<T,PK extends java.io.Serializable>
extends org.springframework.orm.hibernate3.support.HibernateDaoSupport
implements IGenericDao<T,PK>

This class serves as the Base class for all other DAOs - namely to hold common CRUD methods that they might all use. You should only need to extend this class when your require custom CRUD logic.

To register this class in your Spring context file, use the following XML.

      <bean id="fooDao" class="org.appfuse.dao.hibernate.GenericDaoHibernate">
          <constructor-arg value="org.appfuse.model.Foo"/>
          <property name="sessionFactory" ref="sessionFactory"/>
      </bean>
 

Author:
Bryan Noll

Field Summary
protected  org.apache.commons.logging.Log log
           
 
Fields inherited from class org.springframework.dao.support.DaoSupport
logger
 
Constructor Summary
GenericDaoHibernate(java.lang.Class<T> persistentClass)
           
 
Method Summary
 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.
 java.util.List<T> getAll()
          Generic method used to get all objects of a particular type.
 void remove(PK id)
          Generic method to delete an object based on class and id
 T save(T object)
          Generic method to save an object - handles both update and insert.
 
Methods inherited from class org.springframework.orm.hibernate3.support.HibernateDaoSupport
checkDaoConfig, convertHibernateAccessException, createHibernateTemplate, getHibernateTemplate, getSession, getSession, getSessionFactory, releaseSession, setHibernateTemplate, setSessionFactory
 
Methods inherited from class org.springframework.dao.support.DaoSupport
afterPropertiesSet, initDao
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected final org.apache.commons.logging.Log log
Constructor Detail

GenericDaoHibernate

public GenericDaoHibernate(java.lang.Class<T> persistentClass)
Method Detail

getAll

public java.util.List<T> getAll()
Description copied from interface: IGenericDao
Generic method used to get all objects of a particular type. This is the same as lookup up all rows in a table.

Specified by:
getAll in interface IGenericDao<T,PK extends java.io.Serializable>
Returns:
List of populated objects

get

public T get(PK id)
Description copied from interface: IGenericDao
Generic method to get an object based on class and identifier. An ObjectRetrievalFailureException Runtime Exception is thrown if nothing is found.

Specified by:
get in interface IGenericDao<T,PK extends java.io.Serializable>
Parameters:
id - the identifier (primary assignmentId) of the object to get
Returns:
a populated object
See Also:
ObjectRetrievalFailureException

exists

public boolean exists(PK id)
Description copied from interface: IGenericDao
Checks for existence of an object of type T using the id arg.

Specified by:
exists in interface IGenericDao<T,PK extends java.io.Serializable>
Returns:
- true if it exists, false if it doesn't

save

public T save(T object)
Description copied from interface: IGenericDao
Generic method to save an object - handles both update and insert.

Specified by:
save in interface IGenericDao<T,PK extends java.io.Serializable>
Parameters:
object - the object to save

remove

public void remove(PK id)
Description copied from interface: IGenericDao
Generic method to delete an object based on class and id

Specified by:
remove in interface IGenericDao<T,PK extends java.io.Serializable>
Parameters:
id - the identifier (primary assignmentId) of the object to remove


Copyright © 2008. All Rights Reserved.