day01-3-界面顯示&用戶登錄&餐桌狀態顯示( 二 )

4.3.3.3創建EmployeeDAO類package com.li.mhl.dao;import com.li.mhl.domain.Employee;/** * @author 李 * @version 1.0 */public class EmployeeDAO extends BasicDAO<Employee>{//這里還可以執行特有的操作}4.3.3.4創建EmployeeService類編寫一個getEmployeeByIdAndPwd方法,來驗證賬號密碼 , 并返回相應值
package com.li.mhl.service;import com.li.mhl.dao.EmployeeDAO;import com.li.mhl.domain.Employee;/** * @author 李 * @version 1.0 * 該類完成對employee表的各種操作(通過調用EmployeeDAO對象完成) */public class EmployeeService {//定義一個EmployeeDAO屬性private EmployeeDAO employeeDAO = new EmployeeDAO();//登錄校驗方法//根據empId和pwd返回一個Employee對象,如果查詢不到,就返回nullpublic Employee getEmployeeByIdAndPwd(String empId, String pwd) {//注意密碼使用md5加密后再查詢比較Employee employee =employeeDAO.querySingle("select * from employee where empId=? and pwd=md5(?) ", Employee.class, empId, pwd);return employee;}}4.3.3.5修改MHLView類在MHLView類中的里層循環中,調用方法getEmployeeByIdAndPwd , 如果返回的employee對象非空,則說明存在該用戶 , 登錄成功
修改處1:增加EmployeeService屬性
//定義EmployeeService屬性private EmployeeService employeeService=new EmployeeService();

day01-3-界面顯示&amp;用戶登錄&amp;餐桌狀態顯示

文章插圖
修改處2:
day01-3-界面顯示&amp;用戶登錄&amp;餐桌狀態顯示

文章插圖
4.4顯示餐桌狀態4.4.1功能說明當用戶登錄成功之后,選擇顯示餐桌狀態,可以看到所有的餐桌編號以及對應的餐桌狀態
day01-3-界面顯示&amp;用戶登錄&amp;餐桌狀態顯示

文章插圖
4.4.2思路分析創建表diningTable,創建對應的Javabean,創建對應的DAO , service層...
4.4.3代碼實現4.4.3.1創建diningTable表-- 創建表diningTable(主鍵id,empId,name,pwd,job等)CREATE TABLE diningTable( id INT PRIMARY KEY AUTO_INCREMENT,#自增,表示餐桌編號 state VARCHAR(20)NOT NULL DEFAULT '',#餐桌狀態 orderName VARCHAR(50) NOT NULL DEFAULT '',#預定人的名字 orderTel VARCHAR(20) NOT NULL DEFAULT ''#預定人的電話)CHARSET=utf8-- 插入測試數據INSERT INTO diningTable VALUES(NULL,'空','','');INSERT INTO diningTable VALUES(NULL,'空','','');INSERT INTO diningTable VALUES(NULL,'空','','');SELECT * FROM diningTable;
day01-3-界面顯示&amp;用戶登錄&amp;餐桌狀態顯示

文章插圖
4.4.3.2創建DiningTable類package com.li.mhl.domain;/** * @author 李 * @version 1.0 * 這是一個Javabean,和表 diningTable對應 */public class DiningTable {/*** FieldTypeNullKeyDefaultExtra* -------------------------------------------------------* idint(11)NOPRI(NULL)auto_increment* statevarchar(20)NO* orderNamevarchar(50)NO* orderTelvarchar(20)NO*/private Integer id;private String state;private String orderName;private String orderTel;public DiningTable() {//無參構造器,反射需要}public DiningTable(Integer id, String state, String orderName, String orderTel) {this.id = id;this.state = state;this.orderName = orderName;this.orderTel = orderTel;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getState() {return state;}public void setState(String state) {this.state = state;}public String getOrderName() {return orderName;}public void setOrderName(String orderName) {this.orderName = orderName;}public String getOrderTel() {return orderTel;}public void setOrderTel(String orderTel) {this.orderTel = orderTel;}@Overridepublic String toString() {returnid + "\t\t\t" + state;}}4.4.3.3創建DiningTableDAO類package com.li.mhl.dao;import com.li.mhl.domain.DiningTable;/** * @author 李 * @version 1.0 */public class DiningTableDAO extends BasicDAO<DiningTable>{//如果有特別的操作 , 可以寫在DiningTableDAO中}4.4.3.4創建DiningTableService類package com.li.mhl.service;import com.li.mhl.dao.DiningTableDAO;import com.li.mhl.domain.DiningTable;import java.util.List;/** * @author 李 * @version 1.0 * 該類完成對 diningTable表的各種操作(通過調用DiningTableDAO對象完成) */public class DiningTableService {//業務層//定義一個DiningTableDAO對象private DiningTableDAO diningTableDAO = new DiningTableDAO();//返回所有餐桌的信息public List<DiningTable> list(){List<DiningTable> diningTables =diningTableDAO.queryMulti("select id,state from diningTable", DiningTable.class);return diningTables;}}4.4.3.5修改MHLView類修改處1:增加DiningTableService屬性
//定義DiningTableService屬性private DiningTableService diningTableService=new DiningTableService();修改處2:增加listDiningTable()方法,顯示餐桌信息
//顯示餐桌狀態public void listDiningTable(){List<DiningTable> list = diningTableService.list();System.out.println("\n餐桌編號\t\t餐桌狀態");for (DiningTable diningTable:list) {System.out.println(diningTable);}System.out.println("============顯示完畢============");}

推薦閱讀