1、首先有兩個表,一個attendance考勤表(從表),一個employee員工表(主表)如下圖所示
2、如果要查詢兩個表中指定列的信息,比如employee表中的name等信息,通過employee_number,那麼就涉及到多表查詢,而且對查詢的結果封裝的時候要用:Map<String, Object>
而且sql語言要注意他的書寫格式:請看下面,我查詢的是對應employee表和attendance表的字段都爲employee_number時,查詢這個員工的姓名,id是表的主鍵.
String sql = "select t.id,t.employee_number,t.`day`,t.time_type,t.start_time,t.start_type,t.end_time,t.end_type,t.work_type,t.notes,u.`name` from attendance t,employee u where t.employee_number=u.employee_number";
完整的dao層查詢代碼如下:
3、DBUtils對數據庫中的數據封裝,常有以下幾種,我們會經常用到,需熟記。
封裝的原則:根據列名和實體中的變量名,相一致的,就把數據庫中的數據封入實體中,不一致的就不封入。
我們常用的另外一個工具類:BeanUtils.populate(bean,properties)也是同樣的原則。