Spring JDBCTemplate的介紹及使用

2021-10-23 17:59:07 字數 4284 閱讀 4232

spring jdbc

- 傳統的jdbc即使執行一條簡單的sql語句,其過程也不簡單,要先開啟資料庫連線執行sql語句,然後組裝結果,最後關閉資料庫資源,但太多的try…catch…finally…語句,造成了**氾濫。在spring出現之後,為了解決這些問題,spring提供了自己的方案,就是jdbctemplate模板。

spring jdbctemplate

- spring框架在資料庫開發中的應用主要使用的是jdbctemplate類,它是spring針對jdbc**失控提供的解決方案。jdbctemplate是spring對jdbc的封裝,目的是使jdbc更加易於使用。jdbctemplate是spring的一部分。jdbctemplate處理了資源的建立和釋放。他幫助我們避免一些常見的錯誤,比如忘了總要關閉連線。他執行核心的jdbc工作流,如statement的建立和執行,而我們只需要提供sql語句和獲取結果。

在jdbctemplate中執行sql語句的方法大致分為3類:

jdbctemplate配置連線池

org.springframework.jdbc.core.jdbctemplate類方便執行sql語句

public

jdbctemplate

(datasource datasource)

建立jdbctemplate物件,方便執行sql語句

public

void

execute

(final string sql)

execute可以執行所有sql語句,因為沒有返回值,一般用於執行ddl語句。

jdbctemplate使用步驟

<?xml version="1.0" encoding="utf-8"?>

xmlns

=""xmlns:xsi

=""xsi:schemalocation=""

>

"datasource"

class

="org.springframework.jdbc.datasource.drivermanagerdatasource"

>

name

="driverclassname"

value

="com.mysql.jdbc.driver"

/>

name

="url"

value

="jdbc:mysql://localhost:3306/demo?servertimezone=utc"

/>

name

="username"

value

="root"

/>

name

="password"

value

="root"

/>

bean

>

"jdbctemplate"

class

="org.springframework.jdbc.core.jdbctemplate"

>

name

="datasource"

ref="datasource"

>

property

>

bean

>

"userdao"

class

="com.ssm.dao.impl.userdaoimpl"

>

name

="jdbctemplate"

ref="jdbctemplate"

/>

bean

>

beans

>

3.建立jdbctemplate物件

4.呼叫execute()、update()、query()等方法

**示例:

public

class

testjdbctemplate

}

jdbctemplate實現增刪改

api介紹

org.springframework.jdbc.core.jdbctemplate類方便執行sql語句

public

intupdate

(final string sql)

用於執行`insert`、`update`、`delete`等dml語句。

使用步驟

建立jdbctemplate物件

編寫sql語句

使用jdbctemplate物件的update方法進行增刪改

**示例:

userdaoimpl

public

class

userdaoimpl

implements

userdao

@override

public

intadduser

(user u)

;//執行新增操作,返回的是受sql影響的記錄條數

int count=jdbctemplate.

update

(sql, params)

;return count;

}@override

public

intdeleteuser

(int id)

@override

public

intupdateuser

(user user)

;//執行更新操作,返回的是受sql影響的記錄條數

int count=jdbctemplate.

update

(sql,params)

;return count;

}}

測試類

/*

*新增使用者

*/@test

public

void

testadd()

else}/*

刪除使用者

*/@test

public

void

testdelete()

else}/*

*更新使用者

*/@test

public

void

testupdate()

else

}

jdbctemplate查詢 – queryforobject返回乙個object

org.springframework.jdbc.core.jdbctemplate類方便執行sql語句

api介紹

public

t queryforobject

@nullable object.

.. args)

使用步驟

建立jdbctemplate物件

編寫查詢的sql語句

使用jdbctemplate物件的queryforobject方法,並傳入需要返回的資料的型別

輸出結果

userdaoimpl

//通過id查詢單個使用者資訊

public user queryuserbyid

(int id)

測試類

/* 通過id查詢單個使用者資訊*/

@test

public

void

testqueryuserbyid()

org.springframework.jdbc.core.jdbctemplate類方便執行sql語句

api介紹

public

list

query

使用步驟

建立jdbctemplate物件

編寫查詢的sql語句

在匿名內部類中將結果集中的一行記錄轉成乙個user物件

userdaoimpl

//查詢所有使用者資訊

public list

queryalluser()

測試類

/*查詢所有使用者*/

@test

public

void

testqueryalluser()

}

西藥資料庫 DrugCentral介紹及使用方法

在網路藥理學研究中,通常需要查詢西藥的靶標等資訊。大家用drugbank資料庫比較多。這裡介紹乙個新的西藥資料庫drugcentral.它的 是 文末檢視 資料庫中藥物作用機制資訊來自若干專家注釋的資源 chembl資料庫 guide to pharmacology kegg drug,以及人工從文...

C語言make和Makefile介紹及使用

在軟體的工程中的原始檔是不計其數的,其按照型別,功能,模組分別放在若干個目錄中,哪些檔案需要編譯,那些檔案需要後編譯,那些檔案需要重新編譯,甚至進行 更複雜的功能操作,這就引入了我們的系統編譯的工具 在linux和unix中,有乙個強大的使用程式,叫make,可以用它來管理多模組程式的編譯和鏈結,直...

IPhone CoreImage 的介紹和使用

1.coreimage的簡單介紹 2.coreimage的使用 2.1在ios開發中匯入coreimage.framework 框架,mac開發中coreimage包含在quartzcore.framework框架中。2.2 coreimage使用中3個主要的類 cicontext 他與core g...