通常DAO层完成数据的持久化工作,一般开发者不需要借助DI容器的getBean()方法去获取JdbcTemplate实例。而是使用Spring提供的DaoSupport辅助类。

比如JdbcDaoSupport,它是建立在JdbcTemplate基础上的支持类。JdbcDaoSupport会自动创建相应的模板!

JdbcDaoSupport暴露了getJdbcTemplate()、getDataSource()方法,可以获取JdbcTemplate实例。 不过这个需要注入一个jdbcTemplate或者DataSource

配置信息如下:

<bean id="jdbcDaoSupport" class="com.spring.test.JdbcDaoSupportImpl">
   <property name="jdbcTemplate" ref="jdbcTemplate"></property>
  </bean>

对应的实现类:

public class JdbcDaoSupportImpl extends JdbcDaoSupport {
 public void findString(){
  String sql = "select count(*) from member";
  int count = this.getJdbcTemplate().queryForInt(sql);
  System.out.println(count);
 }
}

 

测试类如下:

public class App {
 public static void main(String[] args) {
  ApplicationContext context = new ClassPathXmlApplicationContext(
    "beans.xml");
  JdbcDaoSupportImpl jdbc = (JdbcDaoSupportImpl) context.getBean("jdbcDaoSupport");
  jdbc.findString();
 }
}

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐