spring DAO支持

 Spring为不同持久化技术所提供的模板类 

    Spring为各种支持的持久化技术都提供了简化操作的模板和回调,在回调中编写具体的数据操作逻辑,使用模板执行数据操    作,在Spring中,这是典型的数据操作模式。下面,我们来了解一下Spring为不同的持久化技术所提供的模板类。 

    表 3 不同持久化技术对应的模板类 

    ORM持久化技术 模板类 

 

    如果你使用JDK 5.0或以上版本,则可以使用jdbc.core.simple.SimpleJdbcTemplate的模板类,该模板类使用了泛型和不定入数的技术,使模板的功能更加强大,更易于使用。 

    如果,我们直接使用模板类,一般都需要在DAO中定义一个模板对象并提供数据资源,Spring为每一个持久化技术都提供了支持类,支持类中已经为我们完成这样的功能。这样,我们只需要扩展这些支持类就可以直接编写实际的数据访问逻辑,没有须臾的阻隔。 

    不同持久化技术的支持类如表 4所示: 

ORM持久化技术

 

支持类

 

JDBC

org.springframework.jdbc.core. JdbcDaoSupport

 

Hibernate

org.springframework.orm.hibernate.HibernateDaoSupport

 

Hibernate 3.0

org.springframework.orm.hibernate3.HibernateDaoSupport

 

iBatis

org.springframework.orm.ibatis.SqlMapClientDaoSupport

 

JPA

org.springframework.orm.jpa.JpaDaoSupport

 

JDO

org.springframework.orm.jdo.JdoDaoSupport

 

TopLink

org.springframework.orm.jpa. JpaDaoSupport

 

表 4 持久化技术的支持类 

     ORM持久化技术 支持类 

    JDBC org.springframework.jdbc.core. JdbcDaoSupport 
    Hibernate org.springframework.orm.hibernate.HibernateDaoSupport 
    Hibernate 3.0 org.springframework.orm.hibernate3.HibernateDaoSupport 
    iBatis org.springframework.orm.ibatis.SqlMapClientDaoSupport 
    JPA org.springframework.orm.jpa.JpaDaoSupport 
    JDO org.springframework.orm.jdo.JdoDaoSupport 
    TopLink org.springframework.orm.jpa.JpaDaoSupport 

 

    这些支持类都继承于dao.support.DaoSupport类,DaoSupport实现了InitializingBean接口,在afterPropertiesSet()接口方法中检查模板对象和数据源是否被正确设置,否则将抛出异常。 

所有的支持类都是abstract的,其目的是希望被继承使用,而非直接使用。 

 

 

 

 

 

你可能感兴趣的:(spring)