Sping之JDBC构架(一)
文章分类:Java编程
这次主要学习一下DAO理念及JDBC主要组成部分。
一、所谓有DAO就是数据访问对象。他是英文Data Access Object的首字母缩写。
Spring把数据访问流程中固定部分和可变部分分开,分别映射为两个不同的类:模板(Template)和回调(Callback)。模板管理流程的固定部分,而回调则填写实现细节。
一般,我们通常在模板——回调之上提供一个支撑类。支撑类的作用主要就是调用模板的子例.下图描述了应用的数据访问类、支撑类和模板类之间的关系。
示例:
首先创建一个接口:CustomerDao
代码如下:
public interface CustomerDao {
- void insert(Customer entity);
- List<Customer> findAll();
- Customer findById(Integer id);
void insert(Customer entity);
List<Customer> findAll();
Customer findById(Integer id);
}
然后是CustomerDaoImpl 实现了CustomerDao接口
代码如下:
二、Spring JDBC框架主要组成部分
下图显示的是Spring JDBC框架的主要组成部分。
业务服务对象通过适当的接口继续使用DAO实现类。JdbcDaoSupport是JDBC数据访问对象的超类。它与特定的数据源相关联。Spring Inversion of Control (IOC)容器或BeanFactory负责获得相应数据源的配置具体信息,并将其与JdbcDaoSupport相关联。这个类最重要的功能就是使子类可以使用JdbcTemplate对象。
图中Employee只是名称,是可以变化的。比如我们继续上面的例子。在服务层,就可以创建一个 CustomerServiceImpl ,让他实现CustomerService接口。而CustomerService接口是继承CustomerDao的。这样 在CustomerServiceImpl中就可以创建一个CustomerDaoImol实例来使用。通过