詳解spring與jdbc整合操作

2022-10-06 22:30:26 字數 2032 閱讀 1585

先上一段簡單示例

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應用時,不用手...