Spring provides distinct DAO base classes for the different data-access technologies it supports. For instance, Spring provides
HibernateDaoSupport for Hibernate,
SqlMapClientDaoSupport for iBATIS SQL Maps, and
JdoDaoSupport for JDO. These classes wrap the common properties and methods that are required in all DAO implementation subclasses.
When you use Hibernate with Spring, the DAO classes extend the Spring
org.springframework.orm.hibernate3.support.HibernateDaoSupport class. This class wraps an instance of
org.springframework.orm.hibernate3.HibernateTemplate, which in turn wraps an
org.hibernate.SessionFactory instance. As you will soon see in this chapter, extending the
HibernateDaoSupport class lets you ...