ResultSetHandler
概論
- ResultSetHandler是用來(lái)簡(jiǎn)化查詢到的數(shù)據(jù)處理的.
- ResultSetHandler的實(shí)現(xiàn)方法可以不用創(chuàng)建實(shí)例對(duì)象去封裝就能打印出來(lái)查詢到的全部數(shù)據(jù).
具體實(shí)現(xiàn)
- ArrayHandler:把結(jié)果集中的第一行數(shù)據(jù)轉(zhuǎn)成對(duì)象數(shù)組惕澎。
- ArrayListHandler:把結(jié)果集中的每一行數(shù)據(jù)都轉(zhuǎn)成一個(gè)數(shù)組莉测,再存放到List中。
- BeanHandler:將結(jié)果集中的第一行數(shù)據(jù)封裝到一個(gè)對(duì)應(yīng)的JavaBean實(shí)例中唧喉。
- BeanListHandler:將結(jié)果集中的每一行數(shù)據(jù)都封裝到一個(gè)對(duì)應(yīng)的JavaBean實(shí)例中捣卤,存放到List里忍抽。
- ColumnListHandler:將結(jié)果集中某一列的數(shù)據(jù)存放到List中。
- KeyedHandler(name):將結(jié)果集中的每一行數(shù)據(jù)都封裝到一個(gè)Map里董朝,再把這些map再存到一個(gè)map里鸠项,其key為指定的key。
- MapHandler:將結(jié)果集中的第一行數(shù)據(jù)封裝到一個(gè)Map里子姜,key是列名祟绊,value就是對(duì)應(yīng)的值。
- MapListHandler:將結(jié)果集中的每一行數(shù)據(jù)都封裝到一個(gè)Map里闲询,然后再存放到List這些方法.
QueryRunner
- QueryRunner是用來(lái)簡(jiǎn)化增刪改查的.
- QueryRunner通過(guò)封裝update()和query()方法使我們不用那么麻煩的每次都寫那些update()和query()方法而且可以幫我們自動(dòng)關(guān)閉線程.但是,如果我們需要自己定義一個(gè)connection的話我們就需要自動(dòng)的關(guān)閉connection久免。
- 比如我們需要涉及一個(gè)同步的事務(wù)的時(shí)候我們就需要自己定義一個(gè)connection.此時(shí)我們?cè)谡{(diào)用update()和query()方法的時(shí)候需要把connection傳進(jìn)去.