我读到了Spring框架的DAOSupport类。但我无法理解这些DAOSuport类的优点。在DAOSupport类中,我们调用getXXXTemplate()方法来获取特定的模板对象,然后进一步使用它来进行数据库访问。
即使没有扩展DAOSupport,我们也可以在我们的课程中注入XXXTemplate。 其余的事情将保持不变。
那么扩展DAOSupport类有什么好处?
编辑: - 添加示例 类扩展了Spring的SimpleJdbcDaoSupport
public class JdbcDao extends SimpleJdbcDaoSupport {
public int create(Bb obj) {
getSimpleJdbcTemplate().update("insert into ..... ") //insert query
}
此类的Bean可以定义为: -
<bean id="jdbcDao" class="example.dao.support.JdbcDao">
<property name="dataSource"><ref local="dataSource"/></property>
</bean>
我们可以创建一个自定义类而不扩展SimpleJdbcDaoSupport,它将具有JdbcTemplate类型的属性
public class MyDAO {
public myJdbcTemplate; // ant its getter and setter
public int create(Bb obj) {
getMyJdbcTemplate().update("insert into ..... ") //insert query
}
它的bean定义为: -
<bean id="jdbcDao" class="MyDAO">
<property name="myJdbcTemplate"><ref local="jdbcTemplateBean"/></property>
</bean>
正如你所看到的,两个类都做同样的事情。在扩展SimpleJdbcDaoSupport时,我们正在注入DataSource,没有它我们直接注入jdbcTemplate bean。而已。没有更多的区别。 所以我对DAOSupport类的大量使用没有任何好处。 DAOSupport类提供的任何其他功能?
答案 0 :(得分:0)
使用HibernateDAOSupport时,您可以看到差异。 1.配置事务以优化applicationContext上应用程序的性能:
选择:只读 创建/更新:读写。