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...