JDBC高階開發(2) 編寫自己的JDBC框架

2021-08-27 07:15:12 字數 1194 閱讀 1081

元資料:資料庫、表、列的定義資訊。

connection.getdatabasemetadata()

databasemetadata物件

geturl():返回乙個string類物件,代表資料庫的url。

getusername():返回連線當前資料庫管理系統的使用者名稱。

getdatabaseproductname():返回資料庫的產品名稱。

getdatabaseproductversion():返回資料庫的版本號。

getdrivername():返回驅動驅動程式的名稱。

getdriverversion():返回驅動程式的版本號。

isreadonly():返回乙個boolean值,指示資料庫是否只允許讀操作。

preparedstatement . getparametermetadata()

獲得代表preparedstatement元資料的parametermetadata物件。

select * from user where name=? and password=?

parametermetadata物件

getparametercount()

獲得指定引數的個數

getparametertype(intparam)

獲得指定引數的sql型別

resultset. getmetadata()

獲得代表resultset物件元資料的resultsetmetadata物件。

resultsetmetadata物件

getcolumncount()

返回resultset物件的列數

getcolumnname(intcolumn)

獲得指定列的名稱

getcolumntypename(intcolumn)

獲得指定列的型別

業務背景:系統中所有實體物件都涉及到基本的crud操作:

所有實體的cud操作**基本相同,僅僅傳送給資料庫的sql語句不同而已,因此可以把cud操作的所有相同**抽取到工具類的乙個update方法中,並定義引數接收變化的sql語句。

實體的r操作,除sql語句不同之外,根據操作的實體不同,對resultset的對映也各不相同,因此可義乙個query方法,除以引數形式接收變化的sql語句外,可以使用策略模式由qurey方法的呼叫者決定如何把resultset中的資料對映到實體物件中。

編寫自己的shell(2)

指令碼中除了命令之外還包括以下元素 變數,使用者輸入,控制流,環境變數。上一次用fork,execvp,wait實現了乙個能夠建立程序和執行程式的shell。此次對這個shell做一些改進。加入命令列解析,這樣使用者可以在一行中輸入命令和所有引數了,然後將控制語句if.then加入到這個shell中...

從零開始編寫自己的C 框架(2) 開發前準備工作

沒想到寫了個前言就受到很多朋友的支援,大家的推薦就是我最大的動力 推薦得我熱血沸騰,大家就用推薦來猛砸我吧o o 謝謝大家支援。其實框架開發大家都知道,不過要想寫得通俗點,我個人覺得還是挺吃力的。在本系列中,我不會很深入的去講述那些對映啊關係啊 繞得我頭都暈了,這些請大家去檢視相關的文件學習吧 概念...

log4j2 自己用的配置檔案

自己做專案用的配置檔案 主要作用 1.每天將日誌打包 2.只有warn以上級別的才會寫入日誌檔案 3.由於用到了jboss 所有將控制台輸出提高到了info級別 遮蔽了jboos大部分控制台輸出 pattern d 5level class l m msg xex n filepattern log...