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

滿漢樓01-34.功能實現024.2菜單界面顯示4.2.1功能說明顯示主菜單、二級菜單和退出系統功能

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

文章插圖
day01-3-界面顯示&用戶登錄&餐桌狀態顯示

文章插圖
4.2.2代碼實現先搭建界面顯示的大體框架,具體的功能后面再實現
創建MHLView類:
package com.li.mhl.view;import com.li.mhl.utils.Utility;/** * @author 李 * @version 1.0 * 這是主界面 */public class MHLView {//控制是否退出菜單private boolean loop = true;private String key = "";//接收用戶的輸入public static void main(String[] args) {new MHLView().mainMenu();}//顯示主菜單public void mainMenu() {while (loop) {System.out.println("==================滿漢樓==================");System.out.println("\t\t 1 登錄滿漢樓");System.out.println("\t\t 2 退出滿漢樓");System.out.print("請輸入你的選擇:");key = Utility.readString(1);//接收用戶選擇switch (key) {case "1":System.out.print("請輸入員工號: ");String id=Utility.readString(50);System.out.print("請輸入密碼: ");String pws = Utility.readString(50);//到數據庫去判斷,這里先簡單判斷一下if ("123".equals(pws)) {System.out.println("==================登錄成功=================\n");//顯示二級菜單,這里也和一級菜單一樣是循環操作,也放在循環語句中while (loop){System.out.println("==================滿漢樓(二級菜單)==================");System.out.println("\t\t 1 顯示餐桌狀態");System.out.println("\t\t 2 預定餐桌");System.out.println("\t\t 3 顯示所有菜品");System.out.println("\t\t 4 點餐服務");System.out.println("\t\t 5 參看賬單");System.out.println("\t\t 6 結賬");System.out.println("\t\t 9 退出滿漢樓");System.out.print("請輸入你的選擇:");key = Utility.readString(1);//接收用戶的選擇switch(key){case "1":System.out.println("顯示餐桌狀態");break;case "2":System.out.println("預定餐桌");break;case "3":System.out.println("顯示所有菜品");break;case "4":System.out.println("點餐服務");break;case "5":System.out.println("參看賬單");break;case "6":System.out.println("結賬");break;case "9"://因為loop同時控制兩層循環 , 因此當loop設為false時,// 里層循環退出之后,外層循環也會隨之退出loop=false;break;default:System.out.println("輸入有誤 , 請重新輸入");break;}}}else {System.out.println("==================登錄失敗==================");}break;case "2":loop = false;//退出一級菜單的循環break;default:System.out.println("輸入有誤,重新輸入..");}}System.out.println("你退出了滿漢樓系統~");}}4.3用戶登錄功能4.3.1功能說明【day01-3-界面顯示&用戶登錄&餐桌狀態顯示】
day01-3-界面顯示&用戶登錄&餐桌狀態顯示

文章插圖

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

文章插圖
4.3.2思路分析在數據庫創建一張employee表,創建對應的Javabean,創建對應的EmployeeDAO,service層...
(大體上就是根據框架圖從下至上編寫代碼)
4.3.3代碼實現4.3.3.1創建數據庫mhl和表employee-- 創建滿漢樓的數據庫CREATE DATABASE mhl;-- 創建表employee(主鍵id,empId,name,pwd,job等)CREATE TABLE employee( id INT PRIMARY KEY AUTO_INCREMENT,#自增 empId VARCHAR(50) UNIQUE NOT NULL DEFAULT '',#員工號 pwd CHAR(32) NOT NULL DEFAULT '',#密碼md5 NAME VARCHAR(50) NOT NULL DEFAULT '',#姓名 job VARCHAR(50) NOT NULL DEFAULT ''#崗位)CHARSET=utf8-- 插入測試數據INSERT INTO employee VALUES(NULL,'6668612',MD5('123456'),'張三豐','經理');INSERT INTO employee VALUES(NULL,'6668622',MD5('123456'),'小龍女','服務員');INSERT INTO employee VALUES(NULL,'6668633',MD5('123456'),'張無忌','收銀員');INSERT INTO employee VALUES(NULL,'666666',MD5('123456'),'olien','經理');SELECT * FROM employee;
day01-3-界面顯示&用戶登錄&餐桌狀態顯示

文章插圖
4.3.3.2創建Employee類創建和表employee對應的Javabean-Employee
package com.li.mhl.domain;/** * @author 李 * @version 1.0 * 這是一個Javabean ,和表employee對應 */public class Employee {/*** +-------+-------------+------+-----+---------+----------------+* | Field | Type| Null | Key | Default | Extra|* +-------+-------------+------+-----+---------+----------------+* | id| int(11)| NO| PRI | NULL| auto_increment |* | empId | varchar(50) | NO||||* | pwd| char(32)| NO||||* | name| varchar(50) | NO||||* | job| varchar(50) | NO||||* +-------+-------------+------+-----+---------+----------------+*/private Integer id;private String empId;private String pwd;private String name;private String job;public Employee() {//無參構造器,底層的Apache-DBUtils反射需要}public Employee(Integer id, String empId, String pwd, String name, String job) {this.id = id;this.empId = empId;this.pwd = pwd;this.name = name;this.job = job;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getEmpId() {return empId;}public void setEmpId(String empId) {this.empId = empId;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getJob() {return job;}public void setJob(String job) {this.job = job;}@Overridepublic String toString() {return "Employee{" +"id=" + id +", empId='" + empId + '\'' +", pwd='" + pwd + '\'' +", name='" + name + '\'' +", job='" + job + '\'' +'}';}}

推薦閱讀