思路:
- 功能:
(1) 记录订单:分为预约订房、现场订房
(2) 修改订单信息:分为更换房间、记录到达、删除订单 - 使用图形化界面显示房间信息、订单信息,通过不同的功能按钮对数据进行操作,其中房间信息、订单信息的数据存放在数据库中,通过jdbc调用。
细节:
- 记录订单就是记录每一个房客的信息和更新房间的状态,房客填写信息,根据房客想要入住的房间类型查询该类房间的信息,若有状态为“空闲”的房间就将房客安排到这个房间,若没有则订房失败。预约订房和现场订房的区别是,预约订房得到的房间状态为“预约”,而现场订房得到的房间状态为“入住”。
- 修改订单信息都是首先以房客的电话号码为根据查找到要修改的订单,之所以用电话号码为根据是因为电话号码是唯一的。更换房间需要输入想要更换的房间的房号,若该房间的状态为“空闲”,则更换成功,否则更换失败,在更换成功后需要将原来的房间状态改为“空闲”,新的房间状态改为“预定”或者“入住”,将订单中的房间改为新房间;删除订单需要再次确认一遍,确认删除后再删除该条记录,同时将该订单中的房间状态改为“空闲”;记录到达只需将订单中的房间状态改为“入住”。
完整代码如下:
总结:
- 把所有需要输出的客房信息、订单信息分别创建相应的类,并将其作为对象放到一个Display类里,从java基础预订而可以在每个需要显示信息的地方直接调用一个Display的类即可,减少了代码的重复
- 在设计功能的时候要先把最重要的功能选出来,再以此为基础进行拓展,这样可以把一些类似的功能总结到同一个大的功能里
- 在使用数据库创建表时,表中的字段要根据客房类和订单类中的属性进行创建
- 不同的类功能需要更明确一些,不要把太多的功能都放在同一个类里实现
- 查找订单需要根据一个可以唯一确定的信息来查找,例如电话号码、身份证号等
在最开始写代码的时候比较迷,写的很混乱,但之后看了一下面向对象的课本,结合着UML,稍微有了一点感觉,突然开窍了知道怎么写,本来这样的代码有点在炼油渣的感觉,之前也做个很多类似的东西,感觉不会有什么收获,但结合学的知识之后对面向对象有了更深一点的理解,也逐渐感受到了UML中的各种图对打代码的用处和好处,所以上课学的东西都不是没用的。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/18862.html