剛昨天分離了dao層**:
自定義工具類分離dao層
今天又學習了dbutils
這個工具元件:
我以為之前的分離dao層已經算是」極致」分離了,結果這個工具come out
讓之前我寫的那些冗餘**縮得只剩幾行,真的是進步啊。
其實它的這個dbutils這個工具元件也算是封裝了我的dao層,只是暴露了介面給我們呼叫而已。
工具是方便了操作 不過工具會讓人變傻,讓**更像是貼上複製的搬磚,
所以底層的實現還是得一清二楚。
主要需要的實體類:不過一般都是前兩個就行了。
beanhandler: 查詢返回單個物件
beanlisthandler: 查詢返回list集合,集合元素是指定的物件
arrayhandler, 查詢返回結果記錄的第一行,封裝對物件陣列, 即返回:object
arraylisthandler, 把查詢的每一行都封裝為物件陣列,再新增到list集合中
scalarhandler 查詢返回結果記錄的第一行的第一列 (在聚合函式統計的時候用)
maphandler 查詢返回結果的第一條記錄封裝為map
class dbutils
//批量處理修改操作
@test
void batchtest() throws exception , });
dbutils.close(conn);
}// 自定義方法
@test
public
void
testquery() throws exception
resultsetmetadata resultsetmetadata = arg0.getmetadata();
int count = resultsetmetadata.getcolumncount();
student student = new student();
for (int i = 0; i < count; i++) catch (exception e)
}return student;}};
string sql = "select *from student where id=?";
connection conn = jdbcutil.getconnection();
queryrunner queryrunner = new queryrunner();
student student = queryrunner.query(conn, sql, resultsethandler, 11);
system.out.println(student);
dbutils.close(conn);
}//處理單個查詢
@test
void queryonetest() throws exception
//處理多個查詢
@test
void querymanytest() throws exception
}
學習MySQL和資料庫(九) DBUtils
開源的jdbc工具類庫,對jdbc的簡單封裝 該類封裝了sql的執行,是線性安全的。queryrunner類提供了兩個構造方法 public int update connection conn,string sql,object params throws sqlexception 用來執行乙個更...
dbUtils簡單實現原理
在資料庫初級階段,通過連線池連線資料庫,然後在將查詢的結果轉換為物件,過程太過複雜,以下便是實現對此類過程的簡單封裝,另外可以根據此類的封裝,簡單的理解一下spring 中jdbctemplate的query 和update 方法。public class dbutils public dbutil...
給tornado新增dbutils支援
開啟tornado的database.py模組找到reconnect函式 新增dbutils資料池支援後 如下 def reconnect self closes the existing database connection and re opens it.self.close try pool...