iT邦幫忙

2025 iThome 鐵人賽

DAY 2
0

目的

Main:建立連線(前面有做過這裡跳過)、呼叫DAO操作資料庫、印出結果測試是否正確
檢查前面寫的程式碼有沒有出錯並改正

1.連線和建立DAO物件,為了操作資料庫
UserDAO userDAO = new UserDAO(conn):建立一個UserDAO物件,叫userDAO,用conn這個資料庫連線,可以用它來操作users表。
FoodLogDAO foodlogDAO同樣概念。
https://ithelp.ithome.com.tw/upload/images/20251009/20178845uiIdviGNdD.jpg
2.新增使用者
User user1 = userDAO.getUserId(1):從資料庫抓userId=1的使用者資料,回傳一個User物件/null,將回傳的User物件給變數user1。
if(user == null):若查不到就呼叫userDAO.addUser method新增使用者
user.getName:取得user的名字。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845ZRh7i6XkNO.jpg
3.查詢使用者資料
User user2 = userDAO.getUserId(1):從資料庫抓userId=1的使用者資料,回傳一個User物件/null,將回傳的User物件給變數user2。
if(user2 != null):如果user2不是空的就寫出使用者名稱和目標,否則就寫查無此使用者。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845TxzcneCiEu.jpg
4.新增食物記錄
foodDAO.addFoodLog:呼叫FoodDAO類別裡的addFoodLog()放入使用者id,食物名,記錄日期,食物份量),共新增兩筆。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845EuqJ5BLt3m.jpg
5.查詢當日飲食記錄
List< FoodLog > logs=foodLogDAO.getUserRecord(1,2025-10-07):呼叫foodLogDAO裡的gerUserRecord method,傳入userId和日期,查出的結果轉成多個FoodLog物件存入List列表。
for(FoodLog log:logs):取出logs裡的每個FoodLog物件。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845ChU8kfDTMa.jpg
6.更新份量
foodLogDAO.updateFoodLog(1,3.0):呼叫foodLogDAO裡的updateFoodLog method,傳入logId和份量。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845PHF3wlgIKG.jpg
7..刪除記錄
foodLogDAO.deleteFoodLog(2):呼叫foodgDAO裡的deleteFoodLog method,傳入logId。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845mIFEiVHmug.jpg
最後如果有例外把它寫出
8.debug
在class UserDAO的addUser method中不能把userIs傳入因為他是primmary key。
https://ithelp.ithome.com.tw/upload/images/20251010/20178845mPVn10uWVC.jpg


上一篇
新增User資料庫
下一篇
執行結果+資料庫檢查
系列文
飲食營養追蹤 + 健康分析 Web 系統7
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言