论文-基于J2SE的酒店管理系统(5)

2018-12-27 19:24

A_username A_password

湖南科技大学本科生毕业设计(论文)

Varchar2(50) 用户名 非空 Varchar2(50) 密码 非空

非空

非空

(2)房间表:

房间表主要是关于房间的基本信息,主要用来对房间信息的管理,查看房间情况等,主要信息有:房间号,房间编号,房间名,备注,类型名,价格,房间状态号等,如表4.2所示。

表4.2 房间表(T_room)

字段名 R_ID R_no R_name R_statement R_name

字段说明 房间号 房间编号 房间名 备注 类型名

数据类型 number Varchar2(50)

Varchar2(50) Varchar2(255) Varchar2(50)

字段约束 主键、非空 非空

非空

值只能是“单人间,双人间,商务间,豪华套房,总统套房”中的任意一个, 非空

外键,非空

备注 非空 非空 非空 非空

R_price R_s_id

价格

房间状态号

Number(8,2) Number

非空 非空

(3)房间状态表:

房间状态表主要是为了区别房间的不同状态,如空闲、占用、维修等,主要信息有:

表4.3 房间状态表(T_roomstate)

字段名 S_id

S_Statename

字段说明 状态号 状态名

数据类型 Number Varchar2(50)

字段约束 主键、非空 值只能是“预定,空闲,维修,入住”中的任意一个

备注 非空 非空

状态号,状态名称等。如表4.3所示。

(4)员工表:

员工表主要是保存员工的基本信息,方便对员工信息的操作,主要信息有:员工号,员工编号,员工名,员工的薪水,性别,电话,年龄,身份证号,地址,email,职务号等。如表4.4所示。

表4.4 员工表(T_worker)

字段名 W_mid W_no

字段说明 员工号 员工编号

字段类型 Number Varchar2(20)

字段约束 非空 非空

备注 非空 非空

- 12 -

W_name W_sal W_sex W_tel W_age W_idc W_address W_email W_WT_id

湖南科技大学本科生毕业设计(论文)

Varchar2(20) 员工名 非空 Varchar2(20) 员工的薪水 非空 Varchar2(10) 性别 值只能是“男,女”

中的一个

Number 员工电话 非空 Number 员工年龄 非空

员工身份证号 Varchar2(30) 非空

Varchar2(50) 员工地址

Varchar2(50) 员工email

Varchar2(20) 员工职务号 外键,非空

非空

非空 非空 非空 非空 非空 非空 非空 非空

(5)工作类型表:

工作类型表主要是为了方便对不同工种的分类,通过工作类型对员工进行查询等,

表4.5 工作类型表(T_workertype)

字段名 WT_id WT_no WT_name

字段说明 工作类型号 工作编号 工作名

字段类型 Number Varchar2(50) Varchar2(50)

字段约束 主键,非空 非空 值只能是“主管,前台,迎宾,清洁工,服务员,保安”中的一个

备注 非空 非空 非空

主要信息有:工作类型号,工作编号,工作名等。如表4.5所示。

(6)房间账单表:

房间账单表主要是记录顾客的住房消费信息,主要用于对住房消费情况的查询,主要信息有:账单号,账单流水号,顾客编号,房间编号,价格,时间,押金,开单时间,买单时间,完结状态等。如表4.6所示。

表4.6 房间账单表(T_rbill)

字段名 BR_id BR_no BR_C_No BR_ R_no BR_price BR_InTime BR_cash BR_otime BR_ctime BR_state

字段说明 账单号 账单流水号 顾客编号 房间编号 价格 时间 押金 开单时间 买单时间 完结状态

字段类型 Number Varchar2(50) Varchar2(50) Varchar2(50) Number(8,2) Integer

Number(8,2) Date Date Integer

字段约束 主键,非空 非空

外键,非空 外键,非空 非空 非空 默认0 非空 非空

非空 0代表未完结,1代表完结

备注 非空 非空 非空 非空 非空 天数 非空 非空

(7)顾客表:

顾客表主要用于记录顾客的基本信息,主要信息有:顾客号,顾客编号,顾客名,

- 13 -

湖南科技大学本科生毕业设计(论文)

顾客电话,年龄,身份证号,地址,email,性别,是否VIP等。如表4.7所示。

表4.7 顾客表(T_customer)

字段名 C_id C_No C_name C_tel C_age C_idc C_address C_email C_sex C_Type

字段说明 顾客号 顾客编号 顾客名 顾客电话 顾客年龄 顾客身份证号 顾客地址 顾客email 性别 是否VIP

数据类型 Number Varchar(50) Varchar(50) Number Number Varchar2(50) Varchar2(50) Varchar2(50) Varchar2(10) _

字段约束 主键,非空 非空 非空 非空 非空

值只能是“男,女”中的一个 非空、 vip 和 普通用户

备注 非空 非空 非空 非空 非空 非空 非空

(8)用餐账单表:

用餐账单表主要是记录顾客的用餐消费信息,主要用于对用餐消费情况的查询,主要信息有:菜单项编号,账单流水号,顾客编号,菜单编号,数量,价格,开单时间,买单时间,完结状态等。如表4.8所示。

表4.8 用餐账单表(T_mBill)

字段名 BM_id BM_no BR_C_No BM_ M_no BM_number BM_price BM_otime BM_ctime BM_state

字段说明 菜单项编号 账单流水号 顾客编号 菜单编号 数量 价格 开单时间 买单时间 完结状态

字段类型 Number Varchar2(50) Number Number Integer

Number(8,2) Date Date Integer

字段约束 主键,非空 非空

外键,非空 外键,非空 非空 非空 非空

非空 0代表未完结,1代表完结

备注 非空 非空 非空 非空 非空 非空 非空

(9)房间占用信息表:

房间占用信息表主要用于记录房间被占用情况,主要信息有:房间占用号,入住时间,退房时间,房间编号,房间状态,预定入住状态等。如表4.9所示。

表4.9 房间占用信息表(T_roomoccupy)

字段名 RO_id

字段说明 房间占用号

数据类型 Number

字段约束 主键、非空

备注 非空

- 14 -

RO_stime RO_etime RO_r_no RO_s_no ro_state

湖南科技大学本科生毕业设计(论文)

Date 入住时间 非空 Date 退房时间

Varchar2(50) 外键、非空 房间编号

Varchar2(50) 外键、非空 房间状态

预定、入住状态 Integer 非空 0代表预定,1代表入住

非空

非空 非空

(10)菜单表:

菜单表主要是关于菜的一些基本信息,主要用来对菜单的基本操作,主要信息有:

表4.10 菜单表(T_menu)

字段名 M_id M_no M_name M_price M_desc

字段说明 菜单项编号 菜编号 菜名 价格 简介

字段类型 Number Varchar2(50) Varchar2(100) Number(8,2) Vachar2(255)

字段约束 主键,非空 非空 非空 非空

备注 非空 非空 非空 非空

菜单项编号,菜编号,菜名,价格,简介等。如表4.10所示。

4.2.2在Java中使用Oracle数据库

系统中运用JDBC实现对数据库的连接操作。通过如下方法的调用可获得与数据库的连接Connection。其中DRV,URL,USER和PWD保存在config.properties文件中,方便修改,需作修改时,只需要修改配置文件,而不用修改代码。LoadConfig类用于读取config.properties文件中的数据。以下是config.properties中的数据:

DRV=oracle.jdbc.driver.OracleDriver

URL=jdbc:oracle:thin:@localhost:1521:orcl USER=scott PWD=tiger

public Connection getConn(){ Connection conn = null; try { Class.forName(config.get(\)); conn = DriverManager.getConnection(config.get(\),config.get(\),config.get(\WD\)); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return conn; } 如下是对数据库的数据进行增删改查操作的一个示例: - 15 -

湖南科技大学本科生毕业设计(论文)

Connection conn = db.getConn();//获得连接 PreparedStatement pstmt = null; String sql = \values(seq_T_admin_test.nextval,?,?,?)\

try { pstmt = conn.prepareStatement(sql);//创建句柄 pstmt.setInt(1, admin.getaGrade()); pstmt.setString(2, admin.getaUserName()); pstmt.setString(3, admin.getaPassword()); int len = pstmt.executeUpdate();//查询时为executeQuery()方法,返回ResultSet结果集

if(len > 0){ bool = true; } } catch (SQLException e) { e.printStackTrace(); } finally{ db.free(conn, pstmt); }

在对数据库中的数据进行操作的过程中,为了保证数据完整性,有时需要用到事务,如下是事务应用的一个示例:

PreparedStatement pstmt = null;

PreparedStatement pstmt2 = null; String sql = \t_roomoccupy where ro_etime<=to_date(?,'yyyy-mm-dd') and ro_state=0)\; String sql2 = \from t_roomoccupy where ro_etime<=to_date(?,'yyyy-mm-dd') and ro_state=0\; try { conn = db.getConn(); conn.setAutoCommit(false); pstmt = conn.prepareStatement(sql); pstmt2 = conn.prepareStatement(sql2); pstmt.setString(1, date); pstmt2.setString(1, date); int len1 = pstmt.executeUpdate(); int len2 = pstmt2.executeUpdate(); if(len1>0 && len2 >0){ conn.commit(); bool = true; }else{ conn.rollback(); }

4.3 系统登录界面

系统的登录界面如下图4.1 登录界面图所示:

- 16 -


论文-基于J2SE的酒店管理系统(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:工程热力学复习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: