先上一段簡單示例
public class mytemplate
public void setdatasource(datasource datasource)
public void insert(string sql) throws sqlexception
}dao類
public class persondao extends mytemplate
}spring配置檔案
程式設計客棧;property name="locations">
classpath:jdbc.properties
kzokcewhkoperty>
測試類public class persondaotest
}以上**將datasource注入給mytemplate,再把datasource注入給persondao,因為persondao繼承mytemplate,所以擁有datasource屬性。既然persondao繼承mytemplate,所以persondao類注入可以改為
以上例子中mytemplate類似於設計模式中的模板模式也叫模板方法模式,模板方法模式是所有模式中最為常見的幾個模式之一,是基於繼承的**復用的基本技術。
模板模式 = 靜態**+動態變數
在spring中動態變數可以用注入的形式給予。這樣的程式設計方式適合包裝成模板。靜態**構成了模板,而動態變數則是需要傳入的引數。
spring與jdbc結合核心類jdbctemplate
1、基於模板的設定(為什麼可以設定成基於模板的形式)
2、完成了資源的建立和釋放的工作
3、簡化為我們對jdbc的操作
4、完成了對jdbc的核心流程的工作,包括sql語句的建立和執行
5、僅需要傳遞datasource就可以把它例項化
6、jdbctemplate只需要建立一次
7、jdbctemplate是執行緒安全類
使用spring+jdbc修改上面例子(mytemplate類去掉)
public class persondao extends jdbcdaosupport
}spring配置檔案改為
jdbctemplate類結構圖
執行過程
說明:1、執行資料的操作的是jdbctemplate
2、最根本的步驟就是要把datasource注入到jdbctemplate
3程式設計客棧、通過給jdbctemplate注入datasource
a、採用構造器的形式注入
b、採用setter方法進行注入
4、可以給jdbcdaosupport注入datasource
5、可以給jdbcdaosupport注入jdbctemplate
所以spring與jdbc整合有三種方法,但實際上核心類為jdbctemplate
1、使用jdbctemplate
在dao類中,用jdbctemplate作為屬性,用spring對jdbctemplate進行注入。再對jdbctemplate進行datasource注入。
注:為什麼只要對jdbctemplate注入datasource就可以了?
2、繼承jdbcdaosupport
在dao類中,繼承jdbcdaosupport。因為jdbcdaosupport已經有了jdbctemplate的引用,所以只要繼承jdbcdaosupport就相當於有了jdbctemplate屬性。
3、繼承jdbctemplate
spring還提供了其他orm框架整合模式都差不多,完全可直接套用。
spring+hibernate
spring+jdo
由此可看出spring ioc 和 di 的強大,ioc和di 完成了從介面到類的對應。利用spring容器程式設計師很容易的在客戶端實現面向介面程式設計,而且很容易給介面裝配,結構也可以設定的很靈活。因為介面是自己寫的,類也是自己寫的,配置檔案也是自己寫的。spring實際完成了建立物件和裝配的工作,它會自動的對應起來。
本文標題: 詳解spring與jdbc整合操作
本文位址: /ruanjian/j**a/167764.html
Spring整合JDBC與Spring管理事務
1.開始註解模式 2.註解切面 再通知上面加上乙個註解 aspect aspect public class myadvice 再通知的方法上面加上切點 五種 before 表示式 afterreturning around after afterthrowing before myadvice.p...
簡述jdbc,並且spring整合jdbc
首先需要寫好我們經常使用的crud方法,也稱為jdbc模板。在日常的開發中我們只要呼叫這些已經寫好的jdbc模板方法,就可以很好的加快編碼效率。如下 使用jdbc模板實現增刪改查 public class userdaoimpl extends jdbcdaosupport implements u...
Spring整合Struts詳解
spring雖然也提供了自已的mvc元件,但一來spring的mvc元件過於繁瑣,二來是struts的使用者眾多,因此,很多專案還是選擇使用spring整合struts框架,而且spring可以無縫的整合strtus框架,二者結合成乙個更實際的j2ee開發平台 使用spring的web應用時,不用手...