酒店管理系统JAVA代码
酒店管理系统 java实验报告
酒店管理系统 java实验报告实验报告:酒店管理系统(Java实现)一、实验目的本次实验旨在通过Java编程语言实现一个简单的酒店管理系统,以提升对面向对象编程的理解和实践能力。
具体目标包括:1. 掌握Java基础语法和面向对象编程概念;2. 学会设计并实现一个基本的酒店管理系统;3. 理解数据库在系统中的应用;4. 培养问题解决和团队协作能力。
二、实验内容1. 系统需求分析:对酒店管理系统的功能需求进行详细分析,明确系统需要实现的功能模块。
2. 系统设计:根据需求分析,设计系统的整体架构和数据库结构,包括数据表的设计。
3. 系统实现:使用Java编程语言,实现酒店管理系统的各个功能模块,包括客户管理、房间管理、预定管理、入住管理、结账管理等。
4. 系统测试:对系统进行详细的测试,确保各功能模块正常运行,数据操作准确无误。
5. 实验总结:对实验过程进行总结,分析实验中的收获与不足,提出改进建议。
三、实验步骤及结果1. 系统需求分析:通过与酒店管理人员交流,明确酒店管理系统需要实现的功能模块,如客户管理、房间管理、预定管理、入住管理、结账管理等。
2. 系统设计:根据需求分析,设计系统的整体架构和数据库结构。
采用Java的JDBC技术连接数据库,使用MySQL作为数据库管理系统。
设计了客户表、房间表、预定表、入住表、结账表等数据表,并定义了各表之间的关系。
3. 系统实现:使用Java编程语言,实现酒店管理系统的各个功能模块。
具体实现过程如下:a. 客户管理模块:实现添加、删除、修改和查询客户信息的功能。
通过JDBC连接数据库,执行相应的SQL语句完成客户数据的增删改查操作。
b. 房间管理模块:实现添加、删除、修改和查询房间信息的功能。
同样使用JDBC连接数据库,执行相应的SQL语句完成房间数据的增删改查操作。
c. 预定管理模块:实现客户预定房间的功能。
当客户预定房间时,系统会检查房间是否可用,并将预定信息保存到预定表中。
Java课程设计报告 酒店客房管理系统
《Java网络编程》课程设计报告酒店客房管理指导教师:***班级: 1303班组长:*组员: ****完成日期:2016年6月20号运城学院计算机科学与技术系目录第一章问题定义 (3)第二章系统需求分析 (3)2.1 系统建设目标 (3)2.2 可行性分析 (3)2.2.1 技术可行性 (4)2.2.2 经济可行性 (5)2.2.3 运行可行性 (5)25565 63DD 揝\37898 940A 鐊39237 9945 饅30392 76B8皸24587 600B 怋*37451 924B 鉋2.2.4 法律可行性 (5)2.3 系统需求分析 (5)第三章系统总体设计 (6)3.1 系统总体结构设计 (6)3.2 使用结构化方法进行系统分析 (6)3.2.1系统功能建模 (6)3.2.2 学生宿舍管理系统的E-R图 (6)第四章系统的详细设计及其实现 (7)4.1 注册页面 (8)4.2 用户登录 (8)4.3 入住登记 (9)4.4 离店结账并生成结账报表 (11)4.5 房间增加 (13)4.6 房间删除 (14)4.7 房间查询 (15)4.8 房间更新 (15)4.9 客户查询 (16)Z30476 770C 県8Y|g33602 8342 荂-第五章系统测试 (16)165.2 测试方法...................................................175.3 测试步骤...................................................175.4 测试过程...................................................175.5 测试结论...................................................18第六章课程设计体会 (18)第一章问题定义随着人类社会进入信息时代,计算机越来越多地活跃在社会各个领域,成为不可缺少的工具,尤其在管理方面,管理软件的出现使大量繁琐复杂的问题变得简单易行。
基于JAVA的酒店管理系统的设计与实现(毕业论文)
Key-scale hotels; SQL Server 20098 R2
第一章 绪论
酒店管理系统对于现代化企事业单位来说,就像一个润滑剂,使原本大量
且复杂的人事数据工作变得简单并且方便,并且对于企事业的领导者来说,它使
领导者对员工信息一目了然。在当前社会中,办公自动化已经在企业办公中无处
摘 要
当前酒店管理系统己经得到了充足的发展和完善,一些大的酒店购买了功能强大、数据量处理快速、客户行为研究的软件,借此来提升酒店的核心竞争力。
但是对于一些中小规模的酒店而言,昂贵的系统花费、专人的维护是不现实的,
也是非常不灵活的。一款简单、灵活、经济适用的中小型酒店管理系统的开发非
常具有市场前景。
2.本文的开发过程遵守软件工程的理论,详细地介绍了中小型酒店管理系统的开发背景、研究现状、系统业务需求、功能需求、非功能需求、系统架构设计、数据库设计、安全设计,给出了核心功能模块的界面实现和代码实现过程,并对系统做了较为详细的功能测试和性能测试,保证了系统的正确性。
通过在酒店的模拟运行,本系统能够实现简化酒店原有工作流程、提高人员
2. Specific design for hotelinformation management system. Firstly, determine the overall design of the system overview of basic management modules. Secondly, design of key technologies, development environment and database in detail, which involved in the development of the system. Finally, we drawn diagrams for the implementation of the main function modules, including room management module,financial statistics module, personnel management module and warehouse management module.
java语言编程应用案例分享
java语言编程应用案例分享java语言是一种广泛应用于软件开发领域的编程语言,具有跨平台、面向对象、安全性高等特点。
在实际应用中,java语言可以用于开发各种类型的应用程序。
下面列举了10个以java语言编写的应用案例,分别涉及到不同领域和应用场景。
1. 学生信息管理系统学生信息管理系统是一种常见的应用程序,用于管理学校或教育机构的学生信息。
通过java语言可以实现学生信息的录入、查询、修改和删除等功能,使学校的学生信息管理更加便捷和高效。
2. 图书馆管理系统图书馆管理系统是一种用于管理图书馆藏书和借阅信息的应用程序。
通过java语言可以实现图书的录入、查询、借阅和归还等功能,方便读者进行图书的管理和借阅。
3. 在线购物系统在线购物系统是一种通过互联网进行商品购买的应用程序。
通过java语言可以实现用户注册、商品浏览、购物车管理、订单生成等功能,提供给用户方便快捷的购物体验。
4. 酒店管理系统酒店管理系统是一种用于管理酒店客房和预订信息的应用程序。
通过java语言可以实现客房的查询、预订和退订等功能,方便酒店管理人员进行客房的管理和预订。
5. 在线银行系统在线银行系统是一种通过互联网进行银行业务操作的应用程序。
通过java语言可以实现用户登录、账户查询、转账汇款、账单管理等功能,方便用户进行各种银行操作。
6. 医院挂号系统医院挂号系统是一种用于管理医院患者挂号和预约信息的应用程序。
通过java语言可以实现患者的挂号、预约和退号等功能,方便医院管理人员进行患者的管理和预约。
7. 电影票订购系统电影票订购系统是一种通过互联网进行电影票购买的应用程序。
通过java语言可以实现用户注册、电影浏览、选座购票等功能,方便用户进行电影票购买和选座。
8. 人事管理系统人事管理系统是一种用于管理企业员工信息和薪酬福利的应用程序。
通过java语言可以实现员工信息的录入、查询和薪酬福利管理等功能,方便企业进行人事管理。
基于java的订餐管理系统的设计与实现
基于java的订餐管理系统的设计与实
现
1. 需求分析:明确订餐管理系统的功能需求,包括用户注册/登录、菜单浏览、订单管理、支付处理等。
确定系统的数据需求,例如菜品信息、用户信息、订单信息等。
2. 系统设计:根据需求分析的结果,进行系统架构设计和模块划分。
确定数据库表结构,设计实体关系图(ERD)。
制定系统的界面设计,包括用户界面和管理界面。
3. 技术选择:选择适合项目需求的技术栈,如 Java 后端框架(Spring、Spring Boot 等)、数据库(MySQL、Oracle 等)、前端框架(Vue.js、React 等)。
4. 数据库实现:根据设计的数据库表结构,创建数据库并进行数据操作的实现。
包括插入、查询、更新和删除数据的功能。
5. 后端实现:使用选定的 Java 框架和技术,实现业务逻辑和数据处理功能。
包括用户认证、菜单管理、订单处理、支付接口等。
6. 前端实现:使用选定的前端框架,开发用户友好的界面,实现与后端的交互。
确保界面的响应性和用户体验。
7. 系统测试:进行全面的测试,包括功能测试、性能测试、安全测试等。
修复发现的缺陷并进行回归测试。
8. 部署与发布:将系统部署到生产环境,并进行最终的测试和验证。
发布系统并提供用户培训和技术支持。
通过以上步骤,基于 Java 的订餐管理系统可以实现设计与开发的目标。
这个项目涉及多个方面的技能和知识,需要团队成员之间的协作和有效的项目管理。
基于java的酒店管理系统的设计与实现
基于java的酒店管理系统的设计与实现酒店管理系统是一个涉及到多个功能模块的系统,包括客房管理、预订管理、入住管理、账单管理等。
下面是一个基于Java的酒店管理系统的设计与实现的基本思路:1. 数据存储设计:使用关系型数据库管理系统(如MySQL)来存储酒店的各类数据,包括客房信息、预订信息、入住信息、账单信息等。
2. 数据库表设计:根据不同功能模块的需求,设计相应的表结构,并建立表之间的关联关系。
3. 客房管理:设计客房信息表,包括客房编号、客房类型、价格、入住状态等字段。
实现客房信息的增删改查功能,可以添加新的客房、修改客房信息、删除客房、查询客房信息等。
4. 预订管理:设计预订信息表,包括预订编号、客房编号、客户姓名、预订日期、入住日期等字段。
实现预订信息的增删改查功能,可以添加新的预订信息、修改预订信息、取消预订、查询预订信息等。
5. 入住管理:设计入住信息表,包括入住编号、客房编号、客户姓名、入住日期、退房日期等字段。
实现入住信息的增删改查功能,可以添加新的入住信息、修改入住信息、退房结算、查询入住信息等。
6. 账单管理:设计账单信息表,包括账单编号、客房编号、客户姓名、入住日期、费用等字段。
实现账单信息的增删改查功能,可以生成账单、查询账单、结算账单等。
7. 用户界面设计:使用Java Swing或JavaFX等图形界面库来实现用户界面,包括输入框、按钮、表格等组件来展示和操作相关信息。
8. 系统逻辑设计:根据上述功能模块的需求,实现相应的功能方法和业务逻辑,包括数据库访问、数据校验、业务处理等。
9. 用户管理:设计用户信息表,包括用户名、密码、权限等字段。
实现用户的登录和鉴权功能,保证只有具有相应权限的用户可以访问和操作系统的功能。
除了上述基本的功能模块,酒店管理系统还可以根据具体需求进行扩展和优化,例如增加会员管理、房间维护、销售统计等功能。
基于Java的酒店管理系统的设计与实现需要充分考虑系统的可靠性、安全性和性能。
酒店管理系统毕业论文
衡阳财经工业职业技术学院毕业论文(设计)课题申报表一、申报课题人的有关资料二、课题名称四、审批意见xx学院毕业论文(设计)任务书题目:酒店管理系统学生姓名:_______系部:_____电子信息系_专业:_计算机应用__班级:xx计应综合x班指导老师:_____开题时间:完成时间:年月日衡阳财经工业职业技术学院教务处印制一、选题背景及意义二、研究的主要内容三、工作的重点与难点,拟采取的解决方案四、论文工作量及进度五、论文预期成果六、完成论文拟阅读的主要文献七、指导老师意见xx学院学生毕业论文(设计)题目:酒店系统管理姓名:xxx学号:系部:电子信息系专业:计算机应用班级:指导老师:开题时间:完成时间:衡阳财经工业职业技术学院教务处制酒店管理系统【摘要】随着社会经济的飞速发展,星级酒店日益增多,而酒店对客房管理的全面性更是刻不容缓。
在当今这个信息化的社会中,酒店必须借助计算机来进行现代化的信息管理,所以酒店管理系统能够为酒店管理人员提供一个既快速便捷又安全可靠的管理平台。
科学技术的不断提高和计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着举足轻重的作用。
作为计算机应用的一部分,人工化管理已不能满足客户的需求,例如不能及时查询客房正常情况和人工管理的费时性,也为了能使管理人员可以轻松快捷地完成酒店客房管理任务,实现无纸化、电子化和智能化管理,更快速地了解酒店各客房的所有信息。
这些优点能够极大地提高酒店管理效率,也正是酒店实现正规化管理的开始。
酒店管理系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两方面。
对于前者来说是要求建立起数据一致性、完整性高度的安全性,而对于后者则只要求应用程序功能齐全,通俗易懂即可。
我在本次毕业设计中采用了JAVA和SQLServer2005数据库连接。
JAVA可以在不同的硬件平台和不同的操作系统上执行,有着很好的跨平台性。
宾馆客房系统代码
宾馆客房系统代码第一页面中标签控件属性如下: Object Label1: Tlabel Left=57 Top=78Width=36Height=12Caption='房间号'Object Label1: Tlabel Left=57Top=110Width=48Height=12Caption='客户姓名'Object Label1: Tlabel Left=57Top=142Width=48Height=12Caption='身份证号码'Object Label1: Tlabel Left=57Top=174Width=48Height=12Caption='入住时间'Object Label1: Tlabel Left=57Top=214Width=48Height=12Caption='入住理由'Object Label1: Tlabel Left=312 Top=78Width=24Height=12Caption='房价'Object Label1: TlabelLeft=312Top=110Width=48Height=12Caption='住宿天数'Object Label1: TlabelLeft=312Top=142Width=48Height=12Caption='值班人员'Object Label1: TlabelLeft=312Top=174Width=48Height=12Caption='电话号码'Object Label1: TlabelLeft=312Top=214Width=48Height=12Caption='结算费用'Object Label1: TlabelLeft=224Top=24Width=120Height=20Caption='顾客入住登记'Font.Height=-20 ='宋体' 第一页面中数据编辑类控件属性如下: Object DBEdit1: TDBEditLeft=129Top=79Width=121Height=20DataField='房间号'DataSource=Datasource1Taborder=0Object DBEdit1: TDBEdit Left=129Top=111Width=121Height=20DataField='客户姓名' DataSource=Datasource1 Taborder=1Object DBEdit1: TDBEdit Left=129Top=143Width=121Height=20DataField='身份证号码' DataSource=Datasource1 Taborder=2Object DBEdit1: TDBEdit Left=129Top=175Width=121Height=20DataField='入住时间' DataSource=Datasource1 Taborder=3Object DBEdit1: TDBEdit Left=129Top=207Width=121Height=20DataField='入住理由' DataSource=Datasource1 Taborder=4Object DBEdit1: TDBEdit Left=129Top=79Width=121Height=20DataField='房价' DataSource=Datasource1 Taborder=5Object DBEdit1: TDBEdit Left=382Top=111Width=121Height=20DataField='入住天数' DataSource=Datasource1 Taborder=6Object DBEdit1: TDBEdit Left=382Top=143Width=121Height=20DataField='值班人员' DataSource=Datasource1 Taborder=7Object DBEdit1: TDBEdit Left=382Top=175Width=121Height=20DataField='电话号码' DataSource=Datasource1 Taborder=8Object DBEdit1: TDBEdit Left=382Top=207Width=121Height=20DataField='结算费用' DataSource=Datasource1 Taborder=9第一页面中数据连接类控件属性如下:Object Table1: TtableActive=TureTableName=宾馆住宿系统.dbLeft=488Top=64Object DataSource1: TdataSourceDataSet=Table1Object DBNavigator1: TDBNavigatorLeft=184Top=224Width=240Height=25DataSource=DataSource1Flat=TrueTabOrder=10Procedure TForm1.Edit1Click(Sender:TObject); BeginEdit2.Text:=' 'Edit3.Text:=' ';End;Procedure TForm1.Edit2Click(Sender:Tobject); BeginEdit1.Text:=' 'Edit3.Text:=' ';End;Procedure TForm1.Edit3Click(Sender:Tobject);BeginEdit2.Text:=' 'Edit1.Text:=' ';End;执行按钮的程序代码如下:Procedure TForm1.Button1Click(Sender:Tobject);BeginTable1.refresh;With table1 doTryDisablecontrols;Filtered:=false;If edit1.text<>' ' then memo1.text:='客户姓名'+' ' ' '+edit1.text+' ' ' ';If edit2.text<>' ' then memo1.text:='房间号'+' ' ' '+edit2.text;If edit3.text<>' ' then memo1.text:='入住时期'+' ' ' '+edit1.text+' ' ' ';Filter:=memo1.text;Filtered:=true;FinallyEnablecontrols;If dbedit1.text=' ' then begin Messagebeep(1);Showmessage(' 没有符合条件的记录,请确认条件或放弃查询~'); If messageDlg(' 是否继续查询,只有结束查询才能作其他操作~',mtinformation,[mbyes,mbno],0)=mrno then beginFiltered:=false;Table1.close;Table1.open;End;End else beginIf messageDlg('是否继续查询,只有结束查询才能作其他操作~',mtinformation,[mbyes,mbno],0)=mrno then beginFiltered:=false;Table1.close;Table1.open;End;End;End;End;第二页各个控件的属性描述如下:Object Tabsheet2: TtabsheetCaption=客房查询Object Labell2: TlabelLeft=215Top=10Width=114Height=19Caption=客户查询系统Font.Height=-19=宋体Object Labell3: Tlabel Left=24Top=200Width=60Height=12Caption=按姓名查询Object Labell4: Tlabel Left=24Top=224Width=60Height=19Caption=按房号查询Object Labell5: Tlabel Left=23Top=246Width=60Height=12Caption=按时期查询endObject DBFrid1: TDBGrid Left=8Top=40Width=553Height=140DataSource=DataSource1 TitleFont.Height=-12 =宋体Object Edit1:TeditLeft=93Top=197Width=102Hdight=20Text=Edit1Object Edit2:TeditLeft=93Top=218Width=103Hdight=20Text=Edit2Object Edit3:TeditLeft=93Top=241Width=103Hdight=20Text=Edit3Object Button1:TbuttonLeft=232Top=208Width=75Height=25Caption='执行查询'Object Memo1:TmemoLeft=372Top=189Width=185Height=61Visible=False第三页面命令控件代码:Procedure TForm1.Button2Click(Sender:Tobject); VarSum1:real;S:string;Bookmark1:tbookmark; BeginSum1=0.00;Bookmark1:=table1.getbookmark;Table1.disablecontrols; Table1.first;While not table1.eof do BeginSum1:=sum1+table1.fieldbyname('结算费用')。
【精品】基于JAVA酒店管理系统的设计与实现_毕业论文设计
湖南科技大学潇湘学院毕业设计(论文)题目酒店管理系统作者学院计算机科学与工程学院专业计算机科学与技术学号指导教师摘要本文完整的描述了一个酒店管理系统的设计与实现的过程,采用真正的跨平台Java技术为基础,利用eclipse编程平台结合Oracle 数据库,完成了酒店管理系统的功能。
本系统是基于GUI的图形界面系统,使用了MVC框架,采用JAVA语言和Oracle 数据库开发完成的酒店管理系统。
该系统的主要目标是针对酒店客房住房管理进行计算机的管理,系统主要实现了以下模块:房间管理模块,营销管理模块,商品管理模块,系统设置模块。
本酒店管理系统可供用户进行房间管理、客户查询、营销管理以及功能强大的消费管理的功能。
用户只需要简单的输入,所有数据都由数据库管理系统管理。
本文中数据库服务器端采用了 Oracle 作为后台数据库,为数据的安全和程序的稳定运行提供了保障。
关键词:酒店管理系统 JAVA OracleABSTRACTThis paper describes a complete hotel management system design and implementation of the process, USES the real cross-platform Java technology as the foundation, use eclipse programming platform combined with Oracle database, the completion of the hotel management system function.This system is based on the GUI GUI system, using MVC framework, the JA V A language and Oracle database development completed hotel management system. The system's main goal is for hotel rooms housing management computer management, system mainly realizes the following module: room management module, marketing management module, commodities management module, the system Settings module.The hotel management system is available for users room management, marketing management and customer inquires powerful function, the consumption of the function of management. The user need only simple input, all the data are made by the database management system management. This paper database server in the Oracle as backend database, data security and procedures for the stable operation of the provided protection.Key Words:Hotel Management System;Oracle;Java目录第一章绪论.............................................................................................................................................. - 1 -1.1研究背景...................................................................................................................................... - 1 -1.2国内外研究现状.......................................................................................................................... - 1 -1.3研究意义...................................................................................................................................... - 2 -1.4研究内容和研究方法.................................................................................................................. - 2 -1.4.1研究内容........................................................................................................................... - 2 -1.4.2研究方法........................................................................................................................... - 2 - 第二章系统分析...................................................................................................................................... - 3 -2.1可行性分析.................................................................................................................................. - 3 -2.1.1 技术可行性分析 .............................................................................................................. - 3 -2.1.2 经济可行性分析.............................................................................................................. - 3 -2.1.3 操作可行性分析.............................................................................................................. - 3 -2.1.4 其他影响系统开发的因素.............................................................................................. - 3 -2.2 需求分析..................................................................................................................................... - 3 -2.2.1 用户需求说明.................................................................................................................. - 3 -2.3 系统需求说明............................................................................................................................. - 5 -2.4项目开发环境及工具介绍.......................................................................................................... - 5 - 第三章概要设计...................................................................................................................................... - 7 -3.1功能模块...................................................................................................................................... - 7 -3.2 设计思想以及框架..................................................................................................................... - 9 -3.2.1设计思想........................................................................................................................... - 9 -3.2.2框架................................................................................................................................... - 9 -3.3数据库设计.................................................................................................................................. - 9 -3.3.1 ER图 .............................................................................................................................. - 10 -3.3.2 数据字典........................................................................................................................ - 12 - 第四章详细设计.................................................................................................................................... - 16 -4.1项目主要业务模块.................................................................................................................... - 16 -4.1.1登陆界面模块................................................................................................................. - 16 -4.1.2房间管理模块................................................................................................................. - 16 -4.1.3营销管理模块................................................................................................................. - 16 -4.1.4商品管理模块................................................................................................................. - 16 -4.1.5系统设置模块................................................................................................................. - 16 -4.2运行控制.................................................................................................................................... - 16 -4.2.1运行流程......................................................................................................................... - 17 -4.2.2 测试................................................................................................................................ - 17 -4.2.3 测试结果........................................................................................................................ - 33 - 第五章结束语........................................................................................................................................ - 34 - 参考文献.................................................................................................................................................. - 35 - 致谢.......................................................................................................................................................... - 36 - 附录.......................................................................................................................................................... - 37 -第一章绪论1.1研究背景酒店业是一个前景广阔而又竞争激烈的行业。
酒店管理系统源代码
西彼科技有限责任公司参考源码酒店管理系统彼岸2011-03-31本段源代码,参考与阳光酒店管理系统编写的系统包Sunsdk包1)System包CsHashtable.java/** @(#)CsHashtable.java 1.24 03/12/19** public class** Copyright 2006 CazoSoft, Inc. All rights reserved.*/package sunsdk.system;import java.util.*;/*** <code> CsHashtable </code>* <p>* 该类的作用是封装哈希表* <p>* <strong>注意: </strong> 本类使用的哈希表方法put, 可能存在不安全因素* <p>* 相关类:Hashtable** @author 鲜强* @version 2006.3.28 22:18* @see java.util.Hashtable* @since CAZOSOFT 1.0*/public class CsHashtable {/*** 静态变量功能: 构造一个hashtable 供其他函数使用*/private static Hashtable hTable = new Hashtable();/*** 构造函数功能: 构造函数为静态的不能创建对象*/private CsHashtable() {}/*** 放入对象函数功能: 把对象放入哈希表,对象为Object类型** @param key :* 键值, Object 对象* @param value :* 对象, Object 对象*/public static void put(Object key, Object value) {hTable.put(key, value);}/*** 返回对象函数功能: 从哈希表中取出对象,返回为Object类型** @param key :* 键值* @return : 一个Object 对象*/public static Object get(Object key) {return hTable.get(key);}/*** 返回大小函数功能: 返回哈希表的大小** @return : 一个int 哈希表长度值*/public static int size() {return hTable.size();}/*** 移除一个对象** @param key : 接受一个要移除的键值*/public static Object remove(Object key) {return hTable.remove(key);}}/**Sunini.java*############################################################################## ** [ 项目名] :* [ 公司名] : SunshineSOFT* [ 模块名] : 对于INI文件的相关操作* [ 文件名] : sunini.java* [ 相关文件] : config.ini* [ 文件实现功能] : 读取和保存INI文件* [ 作者] : 顾俊* [ 版本] : 1.1* ----------------------------------------------------------------------------* [ 备注] :* ----------------------------------------------------------------------------* [ 修改记录] :** [ 日期] [版本] [修改人] [修改内容]* 2006/03/31 1.0 顾俊创建* 2006/04/06 1.1 顾俊修改读取函数* ##--------------------------------------------------------------------------* 版权所有(c) 2006-2007, SunshineSOFT Corporation* --------------------------------------------------------------------------##** [ 函数说明] :** [## private sunini() {} ]:* 功能: 构造函数** [## public static String getIniKey (String k) {} ]:* 功能: 获得INI文件中的指定键的键值** [## public static void setIniKey (String k, String v) {} ]:* 功能: 设置k键的键值为v对象** [## public static void saveIni (String k[]) {} ]:* 功能: 将k字符数组中所有键所对应的键值保存到INI文件中** [ 遗留问题] : setIniKey ()方法不能处理键值中的转义字符**############################################################################## */package com.sunshine.sunsdk.system;import java.util.*;import java.io.*;public class sunini {private static Properties ini = null;static {try {ini = new Properties ();ini.load (new FileInputStream ("config.ini"));}catch (Exception ex) {System.out.println ("Load CONFIG.INI is false!!");}//End try}/**=======================================================================* ** [## private sunini() {} ]: 构造函数* 参数:无* 返回值:无* 修饰符:private* 功能:防止实例化sunini对象**=======================================================================** */private sunini() {}/**=======================================================================* ** [## public static String getIniKey (String k) {} ]:* 参数:String对象表示键* 返回值:String对象表示k键所对应的键值,如果失败则返回空串* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:获得INI文件中的指定键的键值**=======================================================================** */public static String getIniKey (String k) {if(!ini.containsKey (k)) { //是否有k 这个键System.out.println ("The [ " + k + " ] Key is not exist!!");return "";}//End if(!ini.containsKey (k))return ini.get (k).toString ();}/**=======================================================================* ** [## public static void setIniKey (String k, String v) {} ]:* 参数:String k对象表示键,String v对象表示键值* 返回值:无* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:设置k键的键值为v对象**=======================================================================** */public static void setIniKey (String k, String v) {if(!ini.containsKey (k)) { //是否有k 这个键System.out.println ("The [ " + k + " ] Key is not exist!!");return;}//End if(!ini.containsKey (k))ini.put (k, v);}/**=======================================================================* ** [## public static void saveIni (String k[]) {} ]:* 参数:String k[]字符串数组表示要保存的所有键* 返回值:无* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:将k字符数组中所有键所对应的键值保存到INI文件中**=======================================================================** */public static void saveIni (String k[]) {try {FileWriter fw = new FileWriter ("config.ini");BufferedWriter bw = new BufferedWriter ( fw );//循环变量i是k字符串数组的下标for (int i = 0; i < k.length; i++) {bw.write (k[i] + "=" + getIniKey (k[i]));bw.newLine ();}//End forbw.close ();fw.close ();}catch (Exception ex) {System.out.println ("Save CONFIG.INI is false.");}//End try}}Suntools.java/***############################################################################## ** [ 项目名] :* [ 公司名] : SunshineSOFT* [ 模块名] : 工具函数* [ 文件名] : suntools.java* [ 相关文件] :* [ 文件实现功能] : 测试数据是否合法及流水号自动分配* [ 作者] : 顾俊* [ 版本] : 1.2* ----------------------------------------------------------------------------* [ 备注] :* ----------------------------------------------------------------------------* [ 修改记录] :** [ 日期] [版本] [修改人] [修改内容]* 2006/04/07 1.0 顾俊建立isDate()函数* 2006/04/08 1.1 顾俊添加函数#A, #B, #C, #D* 2006/04/08 1.2 顾俊添加函数#E, #F, #G* ##--------------------------------------------------------------------------* 版权所有(c) 2006-2007, SunshineSOFT Corporation* --------------------------------------------------------------------------##** [ 函数说明] :** [## private suntools () {} ] :* 功能: 防止实例化suntools对象** [## public static boolean isDate (String date) {} ]:* 功能: 判断日期字符串是否合法函数** [## public static boolean isNum (String in) {} ]: #A* 功能: 测试字符串是否由数字(0-9)组成** [## public static boolean isNum (String in, int length, double min, double max) {} ]: #B* 功能: 测试字符串表示的数值及范围,且字符串只能是数字组成** [## public static String getNumber (int type) {} ]: #C* 功能: 自动分配单据编号, 自动递增** [## public static void savNumber (String num, int type) {} ]: #D* 功能: 将已用编号保存到INI文件** [## public static double getConsumeFactor(String sDate, String eDate) {} ]: #E* 功能: 计算酒店计费天数按INI文件中设置的** [## public static double getClockFactor(String sDate, String eDate) {} ]: #F* 功能: 计算酒店钟点房计费系数按INI文件中设置的** [## public static String getConsumeHour(String sDate, String eDate) {} ]: #G* 功能: 计算两个时间之间有几小时几分*** [ 遗留问题] :***############################################################################## */package com.sunshine.sunsdk.system;import java.util.*;import java.text.*;import java.sql.*;import com.sunshine.sunsdk.sql.*;public class suntools {public static final int Number_RZ = 0; //表示销售单号public static final int Number_YD = 1; //表示进货单号public static final int Number_JS = 1; //表示进货单号/**=======================================================================* ** [## private suntools () {} ]: 构造函数* 参数:无* 返回值:无* 修饰符:private* 功能:防止实例化suntools对象**=======================================================================** */private suntools () {}/**=======================================================================* ** [## public static boolean isDate (String date) {} ]:* 参数:String对象表示日期的字符串* 返回值:boolean 合法返回true* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:判断日期字符串是否合法函数**=======================================================================** */public static boolean isDate (String date) {SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");String isdate = date;if(date.length() == 10) //如果只有日期,函数自动加上00:00:00 isdate = date + " 00:00:00";try {sdf.parse (isdate);return true;}catch (Exception ex) {System.out.println ("feetools.isDate(): The DATE format is error .");return false;}}/**=======================================================================* ** [## public static boolean isNum (String in) {} ]:* 参数:String对象表示被测字符串* 返回值:boolean 合法返回true* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:测试字符串是否由数字(0-9)组成**=======================================================================** */public static boolean isNum (String in) {return isNum (in, 0, 0, 0);}/**=======================================================================* ** [## public static boolean isNum (String in, int length, double min, double max) {} ]:* 参数:String对象表示被测字符串* length变量表示字符串最大长度,取值0,表示没有长度限定* min,max变量限定了String对象表示的数值范围,当(length > 0)时* 返回值:boolean 合法返回true* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:测试字符串表示的数值及范围,且字符串只能是数字组成**=======================================================================** */public static boolean isNum (String in, int length, double min, double max) {String num = in;int point = 0; //'.'的个数int len = num.length ();if(length > 0) {if(len > length || len == 0) { //判断字符串长度,不合法空返回falseSystem.out.println ("suntools.isNum(): Length error.");return false;}//Endif}//End if(length > 0)elseif(len == 0) { //判断字符串是否为空,空返回falseSystem.out.println ("suntools.isNum(): String is NULL");return false;}//End if(len == 0)for (int i = len - 1; i >=0; i--) { //判断字符串只能是数字char ac = num.charAt (i);if(ac == '.' && point == 0 && i!= 0) { //如果是'.'字符,且是第一次出现,且不是只有一个点if(i > len - 4) { //判断小数位只能是两位point++;continue;}//Endif}//Endifif(ac < '0' || ac > '9' ) {System.out.println ("suntools.isNum(): Character isn't ( '0' - '9' )");return false;}//Endif}//Endforif(length !=0) {double s = Double.parseDouble (num); //现在len为字符串表示的数值if(s < min || s >max) { //限制范围min-max之间System.out.println ("suntools.isNum(): Amount limit error. ");return false;}//Endif}//End if(length != 0)return true;}/**=======================================================================* ** [## public static String getNumber (int type) {} ]:* 参数:int变量表示要获得什么类型的单号(见类头常量)* 返回值:String对象: 单号;* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:自动分配单据编号, 自动递增**=======================================================================** */public static String getNumber (int type) {GregorianCalendar gc = new GregorianCalendar();String tp, number, month, day; //单号标头, 单号记数位, 为月份, 为天int numLen = 0; //单号的默认位数if(type == Number_RZ) { //要获取销售单号tp = sunini.getIniKey ("LodgName");number = sunini.getIniKey ("LodgNumber");}else if(type == Number_YD){ //要获取进货单号tp = sunini.getIniKey ("EngaName");number = sunini.getIniKey ("EngaNumber");}else {tp = sunini.getIniKey ("ChouName");number = sunini.getIniKey ("ChouNumber");}numLen = number.length (); //得到单号的默认位数number = Integer.parseInt (number) + 1 + ""; //将单号增1,再转成字符串//判断记数号是否超位(超出要求长度)if(number.equals ((int)Math.pow (10, numLen - 1) + "") && number.length() > 1)number = number.substring(1); //单号记数位清零//for循环,用'0'为number补位(i = 当前号码位数, i < numLen)for (int i = number.length (); i < numLen; i++) {number = "0" + number;}//Endfor//为月份补'0'month = gc.get (GregorianCalendar.MONTH) + 1 + "";if( month.length() == 1)month = "0" + month;//为天补'0'day = gc.get (GregorianCalendar.DAY_OF_MONTH) + "";if( day.length () == 1)day = "0" + day;//连接单号标头,日期,记数位;组成单据号码tp = tp + gc.get (GregorianCalendar.YEAR) + month + day + number;return tp; //返回单号}/**=======================================================================* ** [## public static void savNumber (String num, int type) {} ]:* 参数:String对象表示要保存的单号* int变量表示要保存什么类型的单号(见类头常量)* 返回值:无* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:将已用编号保存到INI文件**=======================================================================** */public static void savNumber (String num, int type) {//INI文件中的键名String ini[] = { "[SOFTINFO]", "UserName", "CompName", "[CONFIG]", "Soft_First","Default_Link" , "Default_Page", "Sys_style", "[NUMBER]","LodgName", "LodgNumber", "EngaName", "EngaNumber", "ChouName","ChouNumber", "[HABITUS]", "Ck_Habitus", "Ck_Minute", "[PARTTIME]","In_Room", "Out_Room1", "Out_Room2", "InsuDay", "ClockRoom1","ClockRoom2", "InsuHour1", "InsuHour2", "[JDBC]", "DBFname","UserID", "Password", "IP", "Access", "[ODBC]", "LinkName" };String bt;if(type == Number_RZ) {bt = sunini.getIniKey ("LodgName");sunini.setIniKey ("LodgNumber", num.substring (bt.length () + 8));}else if(type == Number_YD){bt = sunini.getIniKey ("EngaName");sunini.setIniKey ("EngaNumber", num.substring (bt.length () + 8));} else{bt = sunini.getIniKey ("ChouName");sunini.setIniKey ("ChouNumber", num.substring (bt.length () + 8));}//保存到INI文件sunini.saveIni (ini);}/**=======================================================================* ** [## public static double getConsumeFactor(String sDate, String eDate) {} ]:* 参数:String sDate对象表示开始时间* String eDate变量表示结束时间* 返回值:double* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:计算酒店计费天数按INI文件中设置的**=======================================================================** *///获得消费系数public static double getConsumeFactor(String sDate, String eDate) {//获得开始日期时间的--年--月--日--时--分--秒String syh [] = sDate.trim ().split(" ");String symd[] = syh[0].trim().split("-");String shms[] = syh[1].trim().split(":");int sy = Integer.parseInt(symd[0]);int sM = Integer.parseInt(symd[1]);int sd = Integer.parseInt(symd[2]);int sh = Integer.parseInt(shms[0]);int sm = Integer.parseInt(shms[1]);int ss = Integer.parseInt(shms[2]);//获得结束日期时间的--年--月--日--时--分--秒String eyh [] = eDate.trim ().split(" ");String eymd[] = eyh[0].trim().split("-");String ehms[] = eyh[1].trim().split(":");int ey = Integer.parseInt(eymd[0]);int eM = Integer.parseInt(eymd[1]);int ed = Integer.parseInt(eymd[2]);int eh = Integer.parseInt(ehms[0]);int em = Integer.parseInt(ehms[1]);int es = Integer.parseInt(ehms[2]);//获得sDate的long值long sdt = new Timestamp(sy, sM, sd, sh, sm, ss, 0).getTime();//获得eDate的long值long edt = new Timestamp(ey, eM, ed, eh, em, es, 0).getTime();double db = 0;if(sdt > edt) { //不合法开始日期一定要小于结束日期db = -1;return db;}//Endifif(sdt == edt) { //无时间差db = 0;return db;}//Endifint insuDay = (int)(edt - sdt)/3600000;if(insuDay < 24) { //入住不到一天if(Integer.parseInt(sunini.getIniKey("InsuDay")) == 1)db = 1; //按全天计费else {if(insuDay > 1 && insuDay < 12)db = 0.5; //如果不按全天计费,则大于1小时按半天计费elsedb = 1; //如果不按全天计费,则大于12小时按全天计费}//Endifreturn db;}//Endif//几点之后按新的一天计费int inRoom = Integer.parseInt(sunini.getIniKey("In_Room"));if(sh < inRoom) {db = 0.5;}//Endifsh = inRoom; //多的时间已经加了系数,去掉多余的//几点之后按半天计费int outRoom1 = Integer.parseInt(sunini.getIniKey("Out_Room1"));int outRoom2 = Integer.parseInt(sunini.getIniKey("Out_Room2"));if(eh > outRoom1 && eh < outRoom2) {db = db + 0.5;eh = outRoom1; //多的时间已经加了系数,去掉多余的}else if(eh >= outRoom2) {db = db + 1;eh = outRoom2;}//Endif//计算入住时间sdt = new Timestamp(sy, sM, sd, sh, sm, ss, 0).getTime();edt = new Timestamp(ey, eM, ed, eh, em, es, 0).getTime();db = db + (edt - sdt)/86400000;return db;}/**=======================================================================* ** [## public static double getClockFactor(String sDate, String eDate) {} ]:* 参数:String sDate对象表示开始时间* String eDate变量表示结束时间* 返回值:double* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:计算酒店钟点房计费系数按INI文件中设置的**=======================================================================** */public static double getClockFactor(String sDate, String eDate) {//获得开始日期时间的--年--月--日--时--分--秒String syh [] = sDate.trim ().split(" ");String symd[] = syh[0].trim().split("-");String shms[] = syh[1].trim().split(":");int sy = Integer.parseInt(symd[0]);int sM = Integer.parseInt(symd[1]);int sd = Integer.parseInt(symd[2]);int sh = Integer.parseInt(shms[0]);int sm = Integer.parseInt(shms[1]);int ss = Integer.parseInt(shms[2]);//获得结束日期时间的--年--月--日--时--分--秒String eyh [] = eDate.trim ().split(" ");String eymd[] = eyh[0].trim().split("-");String ehms[] = eyh[1].trim().split(":");int ey = Integer.parseInt(eymd[0]);int eM = Integer.parseInt(eymd[1]);int ed = Integer.parseInt(eymd[2]);int eh = Integer.parseInt(ehms[0]);int em = Integer.parseInt(ehms[1]);int es = Integer.parseInt(ehms[2]);//获得sDate的long值long sdt = new Timestamp(sy, sM, sd, sh, sm, ss, 0).getTime();//获得eDate的long值long edt = new Timestamp(ey, eM, ed, eh, em, es, 0).getTime();//获得时间差double db = 0;if(sdt > edt) { //不合法开始日期一定要小于结束日期db = -1;return db;}//Endif//获得两个时间之间有多少秒edt = (edt - sdt) / 1000;//--------------------------------------------------------------------//if(edt <= 60 * Integer.parseInt(sunini.getIniKey("ClockRoom1"))) { db = 0; //开房后几分钟开始计费,读INI文件设置return db;}//Endif//--------------------------------------------------------------------//if(edt / 60 < 60 * Integer.parseInt(sunini.getIniKey("ClockRoom2"))) { db = 1; //不足几小时按一个单位计费return db;}//Endif//--------------------------------------------------------------------////除以上可能的正常计费公式如下db = edt / 3600; //获得过去的小时数edt = edt % 3600 / 60; //获得多余的分钟数if(edt > Integer.parseInt(sunini.getIniKey("InsuHour2")) && edt <= Integer.parseInt(sunini.getIniKey("InsuHour1"))) {db = db + 0.5; //超过多少分,但小于多少分部分,收半价}else if(edt > Integer.parseInt(sunini.getIniKey("InsuHour2"))) {db = db + 1; //超过多少分的,收全价}//Endif//--------------------------------------------------------------------//return db;}/**=======================================================================* ** [## public static String getConsumeHour(String sDate, String eDate) {} ]:* 参数:String sDate对象表示开始时间* String eDate变量表示结束时间* 返回值:String* 修饰符:public static 可以不实例化对象而直接调用方法* 功能:计算两个时间之间有几小时几分**=======================================================================** */public static String getConsumeHour(String sDate, String eDate) {//获得开始日期时间的--年--月--日--时--分--秒String syh [] = sDate.trim ().split(" ");String symd[] = syh[0].trim().split("-");String shms[] = syh[1].trim().split(":");int sy = Integer.parseInt(symd[0]);int sM = Integer.parseInt(symd[1]);int sd = Integer.parseInt(symd[2]);int sh = Integer.parseInt(shms[0]);int sm = Integer.parseInt(shms[1]);int ss = Integer.parseInt(shms[2]);//获得结束日期时间的--年--月--日--时--分--秒String eyh [] = eDate.trim ().split(" ");String eymd[] = eyh[0].trim().split("-");String ehms[] = eyh[1].trim().split(":");int ey = Integer.parseInt(eymd[0]);int eM = Integer.parseInt(eymd[1]);int ed = Integer.parseInt(eymd[2]);int eh = Integer.parseInt(ehms[0]);int em = Integer.parseInt(ehms[1]);int es = Integer.parseInt(ehms[2]);//获得sDate的long值long sdt = new Timestamp(sy, sM, sd, sh, sm, ss, 0).getTime();//获得eDate的long值long edt = new Timestamp(ey, eM, ed, eh, em, es, 0).getTime();//获得时间差sdt = edt - sdt;//生成过去多少时间的字符串String t = sdt / 3600000 + "小时" + sdt % 3600000 / 60000 + "分";return t;}}ToCap.java/** @(#)ToCap.java 1.24 03/12/19** Copyright 2006 CazoSoft, Inc. All rights reserved.*/package sunsdk.system;/*** <code> ToCap </code>* <p>* 本类用于转化中文大写人民币** @author 鲜强* @version 22.14, 04/05/06* @since CAZOSOFT 1.0*/public class ToCap {/*** 用户设置大写钱数(100,000,000 (一亿)以内).** @param money :* String 接收用户的正实数.* @return : String 包括圆整或角分的中文大写人民币,如果不合法,将返回空(null) */public String setMoney(String money) {String re = null;double num;//测试数据是否合法try {num = Double.parseDouble(money.trim());if (num < 100000000 && num >= 0) {//合法, 使用字符串开始转换re = this.mySetMoney(money);}//end if} catch (Exception ex) {}//end try//返回值return re;}/*** 大写转换函数. 功能: 转换数字为中文大写** @param num :* int 接受整数* @return : String 大写数字零到玖.*/private String setDaXie(int num) {String re = null;switch (num) {case 0:re = "零";break;case 1:re = "壹";break;case 2:re = "贰";break;case 3:re = "叁";break;case 4:re = "肆";break;case 5:re = "伍";break;case 6:re = "陆";break;case 7:re = "柒";break;case 8:re = "捌";break;case 9:re = "玖";break;default:break;}return re;}/*** 处理大写人民币** @param num :* String 接收处理过的字符串(实为数字). * @return : 返回处理过的大写人民币.*/private String mySetMoney(String num) throws Exception {//要返回的字符串String re = "";//转换过程String setNum = null;int index = num.indexOf(".");//处理整数if (index == -1) {setNum = num;} else {setNum = num.substring(0, index);}int weiShu = setNum.length();if (weiShu > 0) {int leng = setNum.length();int numYuan = Integer.parseInt("" + setNum.charAt(weiShu - 1));String zhuanYuan = setDaXie(numYuan);re = zhuanYuan;//个位if (weiShu > 1) {int numShi = Integer.parseInt("" + setNum.charAt(weiShu - 2));String zhuanShi = setDaXie(numShi);//十位re = zhuanShi + "拾" + re;if (weiShu > 2) {int numBai = Integer.parseInt(""+ setNum.charAt(weiShu - 3));String zhuanBai = setDaXie(numBai);//百位re = zhuanBai + "佰" + re;if (weiShu > 3) {int numQian = Integer.parseInt(""+ setNum.charAt(weiShu - 4));String zhuanQian = setDaXie(numQian);//千位re = zhuanQian + "仟" + re;if (weiShu > 4) {int numWan = Integer.parseInt(""+ setNum.charAt(weiShu - 5));String zhuanWan = setDaXie(numWan);//万位re = zhuanWan + "万" + re;if (weiShu > 5) {int numShiWan = Integer.parseInt(""+ setNum.charAt(weiShu - 6));String zhuanShiWan = setDaXie(numShiWan);//十万位re = zhuanShiWan + "拾" + re;if (weiShu > 6) {int numBaiWan = Integer.parseInt(""+ setNum.charAt(weiShu - 7));String zhuanBaiWan = setDaXie(numBaiWan);//百万位re = zhuanBaiWan + "佰" + re;if (weiShu > 7) {int numQianWan = Integer.parseInt(""+ setNum.charAt(weiShu - 8));String zhuanQianWan = setDaXie(numQianWan);//千万位re = zhuanQianWan + "仟" + re;}//end qianwan}//end baiwan}//end shiwan}//end wan}//end qian}//end bai}//end shi}//end yuan//处理小数if (index != -1) {String xiaoShu = num.substring(index + 1, num.length());int leng = xiaoShu.length();int numJiao = Integer.parseInt("" + xiaoShu.charAt(0));String zhuanJiao = setDaXie(numJiao);int numFen;if (leng == 1) {numFen = 0;}//end ifnumFen = Integer.parseInt("" + xiaoShu.charAt(1));String zhuanFen = setDaXie(numFen);//十分位+百分位if (numJiao == 0 && numFen != 0 || numJiao != 0 && numFen != 0) {re = re + "圆" + zhuanJiao + "角" + zhuanFen + "分";} else {re = re + "圆整";}//end if} else {re = re + "圆整";}//end indexreturn re;}}2)swing包CsUIManager.java/** @(#)CsUIManager.java 2006-4-13** public class** Copyright 2006 CazoSoft, Inc. All rights reserved.*/package sunsdk.swing;import java.awt.*;import javax.swing.*;import javax.swing.plaf.metal.*;/*** <code> CsUIManager </code>* <p>* 说明:本类为外观管理器* <p>* <strong>警告:</strong>* 使用金属(BOLD)外观时,输入中文会有异常,但不影响系统运行* <p>* 相关库文件:o.jar** @author 鲜强* @version 2006-4-13 23:05:39* @since CAZOSOFT 1.0*/public class CsUIManager {//Windows 外观public static final int WINDOWS = 0;//Java 默认外观public static final int METAL = 1;//Linux 外观public static final int MOTIF = 2;//WindowsClassic 外观public static final int WINDOWSCLASSIC = 3;//Alloy 外观public static final int ALLOY = 4;//Alloy 玻璃外观public static final int GLASSTHEMEALLOY = 5;//Alloy 迷幻外观public static final int ACIDTHEMEALLOY = 6;//Alloy 贝多因外观public static final int BEDOUIDTHEMEALLOY = 7;//Alloy 默认外观public static final int DEAFULTTHEMEALLOY = 8;//Bold 外观public static final int BOLD = 9;/*** 界面风格选择器** @param cp* 接受要改变的控件* @param style* 接受界面下标* @return 返回成功设置与否*/public static boolean setUI(Component cp, int style) {try {switch (style) {case 0:UIManager.setLookAndFeel("com.sun.java.swing.plaf."+ "windows.WindowsLookAndFeel");break;case 1:UIManager.setLookAndFeel("javax.swing.plaf."+ "metal.MetalLookAndFeel");break;case 2:UIManager.setLookAndFeel("com.sun.java.swing.plaf."+ "motif.MotifLookAndFeel");break;case 3:UIManager.setLookAndFeel("com.sun.java.swing.plaf."+"windows.WindowsClassicLookAndFeel");break;case 4:UIManager.setLookAndFeel("com.incors.plaf."+ "alloy.AlloyLookAndFeel");break;case 5:UIManager.setLookAndFeel("soft.wes.feels."+ "GlassThemeAlloyLookAndFeel");break;case 6:UIManager.setLookAndFeel("soft.wes.feels."+ "AcidThemeAlloyLookAndFeel");break;case 7:UIManager.setLookAndFeel("soft.wes.feels."+ "BedouinThemeAlloyLookAndFeel");break;case 8:UIManager.setLookAndFeel("soft.wes.feels."+ "DefaultThemeAlloyLookAndFeel");break;case 9:UIManager.put("swing.boldMetal", Boolean.FALSE);//可设置对话框外观JDialog.setDefaultLookAndFeelDecorated(true);//可设置设置窗口外观JFrame.setDefaultLookAndFeelDecorated(true);Toolkit.getDefaultToolkit().setDynamicLayout(true);System.setProperty("sun.awt.noerasebackground","true");UIManager.setLookAndFeel(new MetalLookAndFeel());break;}} catch (Exception ex) {JOptionPane.showMessageDialog(null, "更换风格失败,以原风格显。
基于javaweb的酒店管理系统的任务书
基于javaweb的酒店管理系统的任务书酒店作为旅游行业的重要组成部分,其管理系统的完善和高效性对于酒店的顺利运营和顾客体验至关重要。
因此,本次任务旨在设计和实现一款基于javaweb的酒店管理系统,提高酒店的管理水平和服务质量。
任务目标:1、设计并实现一个具有完整功能的酒店管理系统,包括酒店信息管理、客房管理、预定管理、财务管理、员工管理等模块。
2、系统要求可视化、易用性高,运行稳定、安全性强。
3、系统应具有高度的可扩展性和可维护性,方便后期升级和维护。
4、系统的开发和实现应符合软件工程的基本原则和开发规范。
任务内容:1、需求分析:根据酒店管理系统的需求,进行需求分析和功能规划。
2、系统设计:根据需求分析结果,设计系统架构、模块功能、数据库设计等。
3、系统实现:基于javaweb技术,实现系统的各个模块功能。
4、系统测试:对系统进行测试,保证系统的可用性、安全性、稳定性以及用户体验。
5、系统部署:将系统部署到服务器上,保证系统的稳定性和安全性。
6、系统文档编写:编写系统的技术文档和用户手册,方便后期维护和使用。
任务实施方式:1、采用团队协作的方式,根据任务分工合理分配任务,并定期汇报进展情况。
2、制定严格的开发规范和质量标准,保证系统的开发和实现质量。
3、采用版本控制工具进行代码管理,确保代码的安全性和可维护性。
4、采用敏捷开发的方式,及时响应需求变更和用户反馈,保证系统的高效性和用户满意度。
任务验收标准:1、系统功能完整,包括酒店信息管理、客房管理、预定管理、财务管理、员工管理等模块。
2、系统运行稳定,安全性强,具有高度的可扩展性和可维护性。
3、系统开发和实现符合软件工程的基本原则和开发规范。
4、系统文档编写规范、完整,方便后期维护和使用。
5、团队合作协调,任务进度合理,保证任务的质量和效率。
任务时间安排:本次任务计划周期为3个月,具体时间安排如下:第1个月:需求分析、系统设计。
第2个月:系统实现、系统测试。
酒店管理系统代码
include <>include <>include<>include<>include<>入住登记 \t\t\t\t\n";printf"\t\t\t\t2. 查询入住情况 \t\t\t\n";printf"\t\t\t\t3. 查询当前费用 \t\t\t\n";printf"\t\t\t\t4. 结账退房 \t\t\t\t\n";printf"\t\t\t\t5. 退出程序 \t\t\t\t\n\n\n";printf"\n\n==========================酒店房间登记与计费管理管理系统=======================\t\n\n\n";printf"请输入相应编号进入菜单\t";人房\n\t\t\t2.双人房\n\t\t\t3.大床房\n";scanf"%d",&roomTypeNum;switchroomTypeNum 小时计费; \n\t\t\t2.按天数计费\n"; //通过输入的数字对应计费方式scanf"%d",&countTypeNum;switchcountTypeNum{case 1:newCheckinInfo->countType = Hour;case 2:newCheckinInfo->countType = Day;break;}printf"\n\n===========================酒店入住登记菜单=========================\t\n\n\n";//生成一个新的订单newOrder = Order mallocsizeofOrder;newOrder -> checkinInfo = newCheckinInfo;newOrder -> date = time0;switchnewCheckinInfo->roomType //通过房型获取房间{case Single:newRoom = getRoomByTypeSingle;break;case Double:newRoom=getRoomByTypeDouble;break;case Big :newRoom=getRoomByTypeBig;}newOrder->room = newRoom;insertToOrderListnewOrder;printf"房间号为:%d\n",newOrder->room->roomNum;GUI = CheckinResultUI;}void showCheckinResultUI{int chooseNum;printf"\n\n=========================酒店入住登记确认菜单=======================\t\n\n\n";printf"\t\t\t\t\t\t\t\n";printf"\t\t\t 登记成功 \t\t\t\t\n";printf"\t\t\t\t\t\t\t\n\n";printf"\n\n=========================酒店入住登记确认菜单=======================\t\n\n\n";printf"按 0 :返回 \n";scanf"%d",&chooseNum;switchchooseNum{case 0:GUI = MainUI;break;default:GUI = CheckinResultUI;break;}}void showOrderUI{int roomNum;int chooseNum;int amount;Order theOrder = NULL;system"cls";printf"\n\n=========================酒店房间信息查询菜单=======================\t\n\n\n";printf"请输入房间号:";scanf"%d",&roomNum;if roomNum<0 || roomNum>100{printf"\n 输入有误请重新输入" ;GUI = OrderUI;}else{theOrder = getOrderByRoomNumroomNum;printf"房型:";switchtheOrder->room->roomType{case Single:printf"单人房\n";break;case Double:printf"双人房\n";break;case Big:printf"大床房\n";break;}printf"计费方式:";switchtheOrder->checkinInfo->countType{case Hour:printf"小时计费\n";amount = time0 - theOrder->date / 3600 +1;printf"已入住时间:%d小时\n",amount;break;case Day:printf"天计费\n";amount = time0 - theOrder->date / 360024 +1;printf"已入住时间:%d天\n",amount;break;}printf"房价:%d\n",theOrder->room->price;printf"应支付:%d\n\n",amount theOrder->room->price;printf"\n\n=========================酒店房间信息查询菜单=======================\t\n\n\n";printf"按0:返回\n";printf"按1:结账退房\n";scanf"%d",&chooseNum;switchchooseNum{case 0:GUI = MainUI;break;case 1:GUI = CheckOutUI;break;default:break;}}}void showCheckOutUI{int chooseNum;printf"\n\n=========================酒店结账退房确认菜单=======================\t\n\n\n";printf"\t\t\t\t\t\t\t\t\n";printf"\t\t\t\t 结账成功 \t\t\t\t\n";printf"\t\t\t\t\t\t\t\t\n\n";printf"\n\n=========================酒店结账退房确认菜单=======================\t\n\n\n";printf"按0:返回";scanf"%d",&chooseNum;switchchooseNum{case 0:GUI = MainUI;break;default:GUI = CheckOutUI;break;}}。
java管理系统设计代码
在Java中设计一个管理系统通常涉及多个类和接口,下面是一个简单的例子,展示了如何设计一个基本的“员工”管理系统。
首先,我们定义一个`Employee`类,它包含员工的基本信息:```javapublic class Employee {private String name;private int id;private String department;public Employee(String name, int id, String department) { = name;this.id = id;this.department = department;}public String getName() {return name;}public int getId() {return id;}public String getDepartment() {return department;}// getter and setter methods...}```然后,我们定义一个`EmployeeManager`类,用于管理`Employee`对象:```javaimport java.util.ArrayList;import java.util.List;public class EmployeeManager {private List<Employee> employees;public EmployeeManager() {this.employees = new ArrayList<>();}public void addEmployee(Employee employee) {this.employees.add(employee);}public void removeEmployee(int id) {this.employees.removeIf(e -> e.getId() == id);}public Employee findEmployee(int id) {return this.employees.stream().filter(e -> e.getId() == id).findFirst().orElse(null);}public void printAllEmployees() {for (Employee e : this.employees) {System.out.println("Name: " + e.getName() + ", ID: " + e.getId() + ", Department: " + e.getDepartment());}}}```最后,我们在`main`方法中测试这个系统:```javapublic class Main {public static void main(String[] args) {EmployeeManager manager = new EmployeeManager();manager.addEmployee(new Employee("John Doe", 1, "IT"));manager.addEmployee(new Employee("Jane Doe", 2, "HR"));manager.addEmployee(new Employee("Alex Johnson", 3, "Sales"));manager.printAllEmployees(); // Prints all employeesmanager.removeEmployee(2); // Removes employee with ID 2manager.printAllEmployees(); // Prints allremaining employees}}```这只是一个非常基础的例子,实际的系统可能需要包含更多的功能,例如更新员工信息,搜索员工等。
基于JAVA的酒店管理系统设计与实现_毕业设计(论文)
重庆大学网络教育学院毕业设计(论文)题目基于JAVA的酒店管理系统设计与实现摘要随着近几年我国酒店业的迅猛发展,酒店业的竞争日益激烈。
为提高酒店的管理水平,增强酒店的竞争能力,先进的酒店管理信息系统己成为酒店经营者的必然选择,由于酒店服务项目众多,客人信息内容繁琐,而且信息量大,因而在操作上经常造成很多不便之处,浪费了时间,降低了工作效率,而且极大地影响了酒店的服务质量和经济效益,要想降低成本,提高工作效率、服务质量和管理水平,必须借助计算机来辅助进行酒店的管理,本文针对这些问题设计了这个系统,本着科学化、规范化、系统化的原则,设计和开发了酒店管理系统。
本文论述了酒店管理系统的详细需求分析过程。
同时论述了酒店系统的详细设计过程,包括酒店管理系统的分析、系统功能设计、数据库设计等,本系统前台采用的开发工具为java,后台数据库的开发工具为 SQL Server2005,前端和后端的结合采用 ADO 数据库访问技术,实现了为管理者提供决策分析功能,最终形成一套完整、实用的管理信息系统。
系统的设计共分为五个主要就阶段:即:系统分析阶段,阐述了系统开发的主要目的,讨论了开发的可行性,并对系统需要完成的主要功能进行了需求分析,确定了各模块的数据流程图;总体设计阶段:在对各功能模块设计方案进行讨论的基础上,进行了详细的数据库设计,将系统按功能划分为会员管理、管理员管理、操作员管理三个功能模块;详细设计阶段:按照设计好的系统结构,对系统菜单、窗口对象、各控件按钮、数据窗口对象等可视化界面和各功能模块进行设计;系统编码阶段:根据详细设计的内容,对系统进行代码编写,按计划开发出稳定、可靠地系统;系统测试阶段:对酒店管理系统进行功能测试、性能测试和界面测试等。
关键词:java、B/S架构、SQL server2005、酒店管理目录摘要 (II)1 绪论 (1)1.1 研究背景与研究意义 (1)1.2 课题调研 (1)2 开发技术及架构 (3)2.1 B/S系统结构 (3)2.2 开发语言 (4)2.3 数据库技术 (5)2.3.1 SQL Server 大型关系数据库 (5)2.3.2 Java数据库访问技术 (5)2.3.3 数据库缓冲技术 (6)2.4 J2EE框架 (6)2.5 总体设计原则 (7)3 系统分析与设计 (8)3.1 需求分析 (8)3.1.1 性能需求分析 (8)3.1.2 产品质量需求分析 (9)3.2 可行性分析 (9)3.3 体系流程分析 (10)3.3.1 业务流程分析 (10)3.3.2 数据流分析 (10)3.4 功能设计 (11)3.5 数据库设计 (13)3.5.1 表的设计 (13)3.5.2 E-R图 (15)4 系统实现 (19)4.1 会员界面说明 (19)4.1.1 会员注册登录 (19)4.1.2 客房预订 (21)4.2 管理员界面说明 (22)4.2.1 管理员用户登录及密码设置 (22)4.2.2 基础信息管理操作 (24)4.2.3 入/订/退业务操作 (26)4.3 操作员界面说明 (27)4.3.1 基础信息管理功能 (27)4.3.2 入/订/退业务操作 (27)结论 (28)致谢 (29)参考文献 (30)1 绪论1.1 研究背景与研究意义21世纪,全球网络化,科技在突飞猛进。
基于javaweb酒店管理系统的设计与实现毕设
基于javaweb酒店管理系统的设计与实现一、概述1.1 选题背景随着旅游业的快速发展,酒店管理系统的需求也日益增加。
酒店作为旅客短暂停留的场所,需要一个高效的管理系统来帮助管理人员提供优质的服务。
本文将探讨基于javaweb的酒店管理系统的设计与实现,以满足酒店管理人员日常管理和客户服务的需求。
1.2 研究目的通过设计和实现基于javaweb的酒店管理系统,旨在提高酒店管理的效率和客户服务质量。
也旨在提高技术人员对javaweb技术在实际项目中的应用能力。
二、需求分析2.1 功能需求酒店管理系统需要包括客房管理、订单管理、员工管理、财务管理、客户管理等功能模块。
在客房管理中,可以包括客房信息的录入、查询、修改和删除;订单管理中,包括订单的录入、查询、修改和删除;员工管理中,包括员工信息的录入、查询、修改和删除;财务管理中,包括财务信息的录入、查询、修改和删除;客户管理中,包括客户信息的录入、查询、修改和删除。
2.2 性能需求酒店管理系统需要具备较高的稳定性和性能,能够支持大量并发访问,并能够快速响应用户操作;系统需要具备较高的安全性,保护客户和酒店的信息安全。
2.3 可行性分析根据目前javaweb技术的成熟度和广泛应用,以及酒店管理系统的需求,设计和实现基于javaweb的酒店管理系统是可行的。
三、技术选型3.1 开发环境本系统的开发环境为Windows操作系统,使用Eclipse作为集成开发环境,MySQL作为数据库。
3.2 技术选型前端技术选用HTML、CSS、JavaScript,后端选用Java语言,使用Spring框架、SpringMVC框架和MyBatis框架进行开发,数据库选用MySQL。
四、系统设计4.1 系统结构设计酒店管理系统采用分层架构设计,包括表现层、业务层和持久层。
表现层负责接收用户请求和展示数据,业务层负责处理业务逻辑,持久层负责与数据库交互。
4.2 数据库设计1. 客房信息表客房编号、客房类型、价格、是否入住等字段。
酒店管理系统的设计与实现(正文+部分源代码)_毕业设计
酒店管理系统的设计与实现(正文+部分源代码)目录摘要........................................................ I II Abstract ...................................................... I V 引言. (1)第一章绪论 (2)1.1 系统开发背景 (2)1.2 课题研究目的及意义 (2)1.3 国内外现状及发展动态 (3)1.4 系统开发工具及相关技术 (4)1.4.1 系统开发工具 (4)1.4.2 数据库开发工具 (4)1.4.3 C#开发语言介绍 (5)第二章系统分析 (8)2.1 需求分析 (8)2.1.1 系统的主要功能 (8)2.1.2 系统的实现目标 (8)2.1.3 系统的性能需求 (9)2.1.4 运行环境 (10)2.2 可行性分析 (11)2.3 数据需求分析 (12)2.4 数据字典 (14)2.5 数据流图 (15)第三章系统设计 (16)3.1 系统功能结构设计 (16)3.2 数据库设计 (17)3.3 系统流程图 (20)第四章系统详细设计与实现 (22)4.1 用户登录 (22)4.3客房管理 (25)4.3.1客房信息修改 (25)4.3.2 入住管理 (29)4.3.3 退租管理 (33)4.3.4 客房类型管理 (35)4.4 员工管理 (38)4.5财务管理 (44)4.6 酒店初始化 (46)4.7用户密码更改 (48)第五章系统测试 (52)5.1测试的作用和意义 (52)5.2测试方法 (52)5.3系统测试 (53)结束语 (57)参考文献 (58)致谢 (59)附录 (60)摘要该软件采用应用开发技术,具有一些客房查询、入住、退房等功能,尤其依靠的优点来为酒店更好的进行管理,稳定性,可扩展性,安全性,健壮性,都是该酒店管理的优势所在。
基于java的民宿管理系统设计与实现
基于Java的民宿管理系统设计与实现一、概述民宿业务在近年来日益兴盛,为了更好地管理民宿的各项业务,提高工作效率,降低管理成本,设计一个高效的民宿管理系统显得尤为重要。
本文将基于Java语言,针对民宿管理系统的设计与实现进行探讨。
二、系统需求分析1. 客房管理:包括客房的信息录入、修改、查询、删除等功能,对客房进行分类管理,分为不同类型,如标准间、豪华套房等。
2. 订单管理:实现订单的录入、取消、修改、查询等功能,支持客房预订、入住等操作,能够方便地查询订单详情、入住情况等信息。
3. 用户管理:包括客户信息的添加、修改、删除等功能,客户可以进行注册、登入等操作,管理客户的个人信息和订单记录。
4. 支付管理:实现上线支付功能,支持多种支付方式,并能够记录支付流水,保证支付安全。
5. 统计分析:对客房入住率、客流量、营业额等数据进行统计分析,提供可视化报表,帮助经营者及时了解经营状况。
三、系统设计方案1. 技术选型:选择使用Java作为开发语言,使用Spring框架进行项目搭建,使用MyBatis作为持久层框架,使用MySQL作为数据库存储技术。
2. 架构设计:采用B/S架构,前端使用HTML、CSS、JavaScript进行开发,后端使用Spring MVC框架进行开发,前后端通过RESTful接口进行通信。
3. 数据库设计:设计合理的数据库表结构,包括客房信息表、订单信息表、用户信息表、支付流水表等,保证数据存取的高效性和一致性。
4. 功能模块划分:根据系统需求,将系统划分为客房管理模块、订单管理模块、用户管理模块、支付管理模块、统计分析模块等,每个模块独立负责自己的特定功能。
5. 安全设计:对用户输入进行严格的校验和过滤,防范SQL注入和XSS攻击,保障系统的安全性。
四、系统实现与测试1. 前端页面开发:根据设计稿,使用HTML、CSS、JavaScript等技术进行前端页面的开发,保证页面的美观性和交互性。
基于JAVA的酒店管理系统毕业设计论文
酒店前台管理系统摘要:酒店前台管理系统是伴随着计算机的普及和IT产业的兴起而出现的产物,该系统的产生为酒店的经营管理带来了很大的便捷---为此而得到了大范围的推广和使用;本系统是根据当前市场需求而设计;能够实现酒店前台与酒店各项管理制度的一体关联与带动性;能实现酒店管理的规范化和一体化;具有较长的市场存活周期。
大西洋酒店前台管理系统是典型的信息采集系统, 系统开发的任务主要包括数据库的设计与维护、客户应用程序的开发这两个主要方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用,具有较强的可移植性等特点。
酒店前台管理系统是当前市场酒店管理实现一体化和简洁话的一个不可缺的系统,该管理系统所提供的详细管理记录与管理资料使得酒店主管或酒店运营者能在较短的时间内做出准确而明智的决策,该系统的所提供的全面和便捷的功能使得酒店能比较健康的运营下去,因此我们所要开发的酒店前台管理系统应该能够为用户提供充足的信息和快捷的查询手段;我们所要开发的大西洋酒店前台明细查询管理系统是计算机管理本酒店的各种业务需求和业务实现的一种计算机应用技术的创新,本系统是根据当前酒店行业是发展需求而开发的系统经过分析,我们使用 Sun公司的 eclipse5.5 开发工具,利用其提供的各种面向对象的开发工具-如swing图形界面的设计;MYSQL来实现数据库的建立和数据库的相关操作;JDBC实现对数据库的连接操作。
能在短时间内建立系统应用雏形,然后--对初始雏形系统进行需求的分析和系统个方面功能的不断补充和完善,对系统各功能模块的不断的修正和改进,最后形成当前的可行系统。
目录第一章引言 (4)1.1课题背景 (4)1.2系统概述 (4)第二章系统开发平台 (5)2.1数据库技术概述 (5)2.2系统开发工具的选择 (5)第三章系统的分析 (6)3.1系统开发的思想和目标 (6)3.2系统现状的分析 (6)3.3系统分工及协作 (7)第四章系统总体结构设计 (7)4.1系统的数据流程设计 (7)4.2系统的功能结构设计 (8)4.3系统的数据库设计 (9)1. 酒店前台界面的设计....................................................................... .. (12)2.管理员登录及权限设定功能木快的实现流程.................. ............ ....... .................... (14)3.酒店客房管理功能模块的实现流程............. .................................. ........ ............. .. (16)4. 酒店客房相关信息的查询功能的实现流程.. .... ......... ..... ...... ... ..... .... . (17)5。
基于javaweb的酒店管理系统毕业设计
基于javaweb的酒店管理系统毕业设计嘿,朋友!咱们今天来聊聊基于 JavaWeb 的酒店管理系统毕业设计这回事儿。
你想想,一个好的酒店管理系统,那可就像是一个精明能干的大管家,把酒店里的各种事务都安排得井井有条。
先说登录注册模块,这就好比是酒店的大门,客人得先有钥匙才能进来。
用户名、密码,一个都不能错,不然怎么能保证客人的信息安全和系统的稳定呢?这要是做得不好,那不就像是大门摇摇欲坠,谁都能随便进出,那还得了?然后是客房管理模块,这可是核心中的核心。
房间的类型、状态、价格,都得明明白白的。
想象一下,客人来了想要一间大床房,结果系统显示混乱,给人家弄了个标间,客人能乐意吗?这就好比客人点了一碗牛肉面,你给端上一碗馄饨,不闹翻天啦?还有客人管理模块,客人的信息得记录清楚,什么姓名、联系方式、入住退房时间等等。
这就像我们得清楚每个客人的喜好和习惯,才能更好地服务他们呀。
不然,客人住得不舒服,下次还能来吗?订单管理模块也不能马虎。
订单的生成、修改、取消,每一步都得顺畅。
这就好比是一场精心策划的旅行,路线安排得好,才能玩得开心。
要是订单管理出了岔子,那不就像是旅行途中迷路了,多糟心呐!至于报表统计模块,那就是酒店的账本。
收入、支出、入住率,都得一目了然。
不然,老板怎么知道酒店的经营状况,怎么做出正确的决策呢?这就跟咱们自己过日子一样,总得清楚钱花哪儿了,赚了多少,对吧?在做这个毕业设计的时候,可别想着偷懒。
代码得写得规范,注释得写清楚,不然过段时间自己都看不懂,那不白忙活了?界面也得设计得美观大方,让人一看就觉得舒服。
就像酒店的装修,得让人赏心悦目,才有住下去的欲望。
而且,一定要多测试,多找问题。
别等到交了作业才发现一堆漏洞,那可就来不及啦!总之,基于 JavaWeb 的酒店管理系统毕业设计可不是一件轻松的事儿,但只要咱们用心,把每个模块都做好,做出一个实用又漂亮的系统,那成就感可不得了!加油吧,相信你一定能行!。
酒店管理系统实现代码之欧阳美创编
//入住import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.Border;import javax.swing.text.*;public class A1 extends JFrame implements WindowListener {//定义各个组件JFrame frame = new JFrame ("入住系统");JLabel nameLabel = new JLabel("客户姓名");JLabel idtifyLabel = new JLabel("身份证号");JLabel roomLabel = new JLabel("入住房号");JLabel moneyLabel = new JLabel("应付金额");JTextField nameField = new JTextField();JTextField idtifyField= new JTextField();JTextField roomField= new JTextField();JTextField moneyField= new JTextField();JButton button1,button2;/*public static void main(String args[]){A1 a1 = new A1();a1.go();}*/public void go(){UpperCaseDocument ucDocument = new UpperCaseDocument();nameField.setDocument(ucDocument);nameField.setForeground(Color.black);//frame.addWindowListener(this);nameField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String username = nameField.getText();}});JComboBox jcb1;//组合框String[] itemList = { "现金", "刷卡" };jcb1 = new JComboBox(itemList);jcb1.setSelectedIndex(0);button1=new JButton("确认支付");button2=new JButton("取消支付");final JPanel p1 = new JPanel();p1.add(jcb1);p1.add(button1);p1.add(button2);p1.setLayout(new GridLayout(3,1));Border etched = BorderFactory.createEtchedBorder();Border border = BorderFactory.createTitledBorder(etched, "付款方式");p1.setBorder(border);button1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="确认支付"){JOptionPane.showMessageDialog(p1,"支付成功","success",RMATION_MESSAGE);}}});button2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="取消支付"){JOptionPane.showMessageDialog(p1,"支付失败","failure",RMATION_MESSAGE);}}});idtifyField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String idtify= idtifyField.getText();String idtifyword= new String(idtify);}});roomField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String room= roomField.getText();String roomword= new String(room);}});moneyField.addActionListener(new ActionListener(){ public voidactionPerformed(ActionEvent e){ String money= moneyField.getText();String idtifyword= new String(money);}});//面板labelPanel放标签JPanel labelPanel = new JPanel();labelPanel.setLayout(newGridLayout(4,1));labelPanel.add(nameLabel);labelPanel.add(idtifyLabel);labelPanel.add(roomLabel);labelPanel.add(moneyLabel);//面板fieldPanel放文本框JPanel fieldPanel = new JPanel();fieldPanel.setLayout(newGridLayout(4,1));fieldPanel.add(nameField);fieldPanel.add(idtifyField);fieldPanel.add(roomField);fieldPanel.add( moneyField);//面板northPanel放面板lanelPanel和面板fieldPanelJPanel northPanel = new JPanel();northPanel.setLayout(newGridLayout(1,2));northPanel.add(labelPanel);northPanel.add(fieldPanel);Container cp = frame.getContentPane();cp.add(northPanel,BorderLayout.NORTH);//northPanel放在northcp.add(p1,BorderLayout.SOUTH);frame.setSize(200,250);frame.setVisible(true);}public void windowClosing(WindowEvent e1){System.exit(0);}public void windowOpened(WindowEvent e2){}public void windowIconified(WindowEvent e3){}public void windowDeiconified(WindowEvent e4){}public void windowClosed(WindowEvent e5){}public void windowActivated(WindowEvent e6){}public void windowDeactivated(WindowEvent e7){}}class UpperCaseDocument extends PlainDocument{ public void insertString(int offset,String string, AttributeSet attributeSet)throws BadLocationException{ string = string.toUpperCase();super.insertString(offset,string, attributeSet); }}第二个://退房import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.Border;import javax.swing.text.*;public class A2 extends JFrame {//定义各个组件JFrame frame = new JFrame ("退房系统");JLabel nameLabel = new JLabel("客户姓名");JLabel idtifyLabel = new JLabel("身份证号");JLabel roomLabel = new JLabel("退房号");JLabel timeLabel = new JLabel("退房时间");JTextField nameField = new JTextField();JTextField idtifyField= new JTextField();JTextField roomField= new JTextField();JTextField timeField= new JTextField();JButton button1,button2;//JTextArea ta = new JTextArea(5,20);/*public static void main(String args[]){A2 a2 = new A2();a2.go();}*/public void go(){UpperCaseDocument ucDocument = newUpperCaseDocument();nameField.setDocument(ucDocument);nameField.setForeground(Color.black);nameField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String username = nameField.getText();}});button1=new JButton("是");button2=new JButton("否");final JPanel p1 = new JPanel();p1.add(button1);p1.add(button2);p1.setLayout(new GridLayout(2,1));Border etched = BorderFactory.createEtchedBorder();Border border = BorderFactory.createTitledBorder(etched, "是否结清消费账单");p1.setBorder(border);button1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="是"){JOptionPane.showMessageDialog(p1,"谢谢您的大力支持!","success",RMATION_MESSAGE);}}});button2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="否"){JOptionPane.showMessageDialog(p1,"请结清消费账单","failure",RMATION_MESSAGE);}}});idtifyField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String idtify= idtifyField.getText();String idtifyword= new String(idtify);}});roomField.addActionListener(newActionListener(){ public void actionPerformed(ActionEvent e){ String room= roomField.getText();String roomword= new String(room);}});timeField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String time= timeField.getText();String timeword= new String(time);}});//面板labelPanel放标签JPanel labelPanel = new JPanel();labelPanel.setLayout(newGridLayout(4,1));labelPanel.add(nameLabel);labelPanel.add(idtifyLabel);labelPanel.add(roomLabel);labelPanel.add(timeLabel);//面板fieldPanel放文本框JPanel fieldPanel = new JPanel();fieldPanel.setLayout(newGridLayout(4,1));fieldPanel.add(nameField);fieldPanel.add(idtifyField);fieldPanel.add(roomField);fieldPanel.add( timeField);//面板northPanel放面板lanelPanel和面板fieldPanelJPanel northPanel = new JPanel();northPanel.setLayout(newGridLayout(1,2));northPanel.add(labelPanel);northPanel.add(fieldPanel);Container cp = frame.getContentPane();cp.add(northPanel,BorderLayout.NORTH);//northPanel放在northcp.add(p1,BorderLayout.SOUTH);// frame.pack();frame.setSize(200,230);frame.setVisible(true);}}class UpperCaseDocument extends PlainDocument{ public void insertString(int offset,String string, AttributeSet attributeSet)throws BadLocationException{ string = string.toUpperCase();super.insertString(offset,string, attributeSet); }}第三个://客房预订import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.Border;import javax.swing.text.*;public class A3 extends JFrame {//定义各个组件JFrame frame = new JFrame ("客房预订");JLabel nameLabel = new JLabel("预订人姓名");JLabel numberLabel = new JLabel("手机号");JTextField nameField = new JTextField();JTextField numberField= new JTextField();JRadioButton rb1 = new JRadioButton("来电预订");JRadioButton rb2 = new JRadioButton("电话预订"); JRadioButton rb3 = new JRadioButton("电传预订");JRadioButton rb4 = new JRadioButton("传真预订");JRadioButton rb5 = new JRadioButton("信函预订");JButton button1,button2;/** public static void main(String args[]){A3 a3 = new A3();a3.go();}*/public void go(){UpperCaseDocument ucDocument = new UpperCaseDocument();nameField.setDocument(ucDocument);nameField.setForeground(Color.black);nameField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String username = nameField.getText();}});JComboBox jcb1;//组合框String[] itemList = { "总统套房", "双人间","单人间" };jcb1 = new JComboBox(itemList);jcb1.setSelectedIndex(0);button1=new JButton("是");button2=new JButton("否");final JPanel p1 = new JPanel();p1.add(jcb1);p1.add(button1);p1.add(button2);p1.setLayout(new GridLayout(3,1));Border etched = BorderFactory.createEtchedBorder();Border border =BorderFactory.createTitledBorder(etched, "预订房类型");p1.setBorder(border);button1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="是"){JOptionPane.showMessageDialog(p1,"客人预订成功","success",RMATION_MESSAGE);}}});button2.addActionListener(new ActionListener(){public voidactionPerformed(ActionEvent e){if (e.getActionCommand()=="否"){JOptionPane.showMessageDialog(p1,"客人预订失败","failure",RMATION_MESSAGE);}}});JPanel p2 = new JPanel();p2.add(rb1);p2.add(rb2);p2.add(rb3);p2.add(rb4);p2.add(rb5);p2.setLayout(new FlowLayout());border =BorderFactory.createTitledBorder(etched, "预订方式");p2.setBorder(border);//创建ButtonGroup按钮组,并在组中添加按钮ButtonGroup group1 = new ButtonGroup();group1.add(rb1);group1.add(rb2);group1.add(rb3);group1.add(rb4);group1.add(rb5);numberField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String number= numberField.getText();String numberword= new String(number);}});//面板labelPanel放标签JPanel labelPanel = new JPanel();labelPanel.setLayout(newGridLayout(2,1));labelPanel.add(nameLabel);labelPanel.add(numberLabel);//面板fieldPanel放文本框JPanel fieldPanel = new JPanel();fieldPanel.setLayout(newGridLayout(2,1));fieldPanel.add(nameField);fieldPanel.add(numberField);//面板northPanel放面板lanelPanel和面板fieldPanelJPanel northPanel = new JPanel();northPanel.setLayout(newGridLayout(1,2));northPanel.add(labelPanel);northPanel.add(fieldPanel);Container cp = frame.getContentPane();cp.add(northPanel,BorderLayout.NORTH);//northPanel放在northcp.add(p2,BorderLayout.CENTER);cp.add(p1,BorderLayout.SOUTH);frame.setSize(200,330);frame.setVisible(true);}}class UpperCaseDocument extends PlainDocument{ public void insertString(int offset,String string, AttributeSet attributeSet)throws BadLocationException{ string = string.toUpperCase();super.insertString(offset,string, attributeSet); }}第四个//餐饮预订import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.Border;import javax.swing.text.*;public class A4 extends JFrame {//定义各个组件JFrame frame = new JFrame ("餐饮预订");JLabel nameLabel = new JLabel("预订人姓名");JLabel timeLabel = new JLabel("预订消费时间");JTextField nameField = new JTextField();JTextField timeField= new JTextField();JCheckBox cb1 = new JCheckBox("中餐");JCheckBox cb2 = new JCheckBox("西餐");JCheckBox cb3 = new JCheckBox("红酒");JCheckBox cb4 = new JCheckBox("饮料");JCheckBox cb5 = new JCheckBox("甜点");JCheckBox cb6 = new JCheckBox("水果");JButton button1,button2;/*public static void main(String args[]){A4 a4 = new A4();a4.go();}*/public void go(){UpperCaseDocument ucDocument = new UpperCaseDocument();nameField.setDocument(ucDocument);nameField.setForeground(Color.black);nameField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String username = nameField.getText();//ta.append("\nUser Name : "+username);}});button1=new JButton("是");button2=new JButton("否");final JPanel p1 = new JPanel();p1.add(button1);p1.add(button2);p1.setLayout(new GridLayout(3,1));Border etched = BorderFactory.createEtchedBorder();Border border = BorderFactory.createTitledBorder(etched, "确认订餐");p1.setBorder(border);button1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="是"){JOptionPane.showMessageDialog(p1,"订餐成功","success",RMATION_MESSAGE);}}});button2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="否"){JOptionPane.showMessageDialog(p1,"订餐失败","failure",RMATION_MESSAGE);}}});timeField.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String time= timeField.getText();String timeword= new String(time);}});JPanel p2 = new JPanel();p2.add(cb1);p2.add(cb2);p2.add(cb3);p2.add(cb4);p2.add(cb5);p2.add(cb6);Border etched1 = BorderFactory.createEtchedBorder();Border border1 = BorderFactory.createTitledBorder(etched1, "预订内容");p2.setBorder(border1);//面板labelPanel放标签JPanel labelPanel = new JPanel();labelPanel.setLayout(newGridLayout(4,1));labelPanel.add(nameLabel);labelPanel.add(timeLabel);//面板fieldPanel放文本框JPanel fieldPanel = new JPanel();fieldPanel.setLayout(newGridLayout(4,1));fieldPanel.add(nameField);fieldPanel.add(timeField);//面板northPanel放面板lanelPanel和面板fieldPanelJPanel northPanel = new JPanel();northPanel.setLayout(newGridLayout(1,2));northPanel.add(labelPanel);northPanel.add(fieldPanel);Container cp = frame.getContentPane();cp.add(northPanel,BorderLayout.NORTH);//northPanel放在northcp.add(p2,BorderLayout.CENTER);cp.add(p1,BorderLayout.SOUTH);frame.setSize(200,350);frame.setVisible(true);}}class UpperCaseDocument extends PlainDocument{ public void insertString(int offset,String string, AttributeSet attributeSet)throws BadLocationException{ string = string.toUpperCase();super.insertString(offset,string, attributeSet); }}第五个:import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.Border;import javax.swing.text.*;public class A5 extends JFrame {//定义各个组件JFrame frame = new JFrame ("订单管理");JLabel a1 = new JLabel("订单号");JLabel a2 = new JLabel("订货名称");JLabel a3 = new JLabel("收货地址");JLabel a4 = new JLabel("应收金额");JLabel a5 = new JLabel("客户名称"); JLabel a6 = new JLabel("结算方式"); JLabel a7 = new JLabel("经办人");JTextField b1 = new JTextField();JTextField b2= new JTextField();JTextField b3= new JTextField();JTextField b4= new JTextField();JTextField b5 = new JTextField(); JTextField b6 = new JTextField();JTextField b7 = new JTextField();JButton button1,button2;public static void main(String args[]){A5 a1 = new A5();a1.go();}public void go(){UpperCaseDocument ucDocument = new UpperCaseDocument();b1.setDocument(ucDocument);b1.setForeground(Color.black);b1.addActionListener(newActionListener(){ public void actionPerformed(ActionEvent e){ String username = b1.getText();}});JComboBox jcb1;//组合框String[] itemList = { "现金", "刷卡" };jcb1 = new JComboBox(itemList);jcb1.setSelectedIndex(0);button1=new JButton("确认收款");button2=new JButton("取消收款");final JPanel p1 = new JPanel();p1.add(jcb1);p1.add(button1);p1.add(button2);p1.setLayout(new GridLayout(3,1));Border etched = BorderFactory.createEtchedBorder();Border border = BorderFactory.createTitledBorder(etched, "收款方式");p1.setBorder(border);button1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="确认收款"){JOptionPane.showMessageDialog(p1,"收款成功","success",RMATION_MESSAGE);}}});button2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if (e.getActionCommand()=="取消收款"){JOptionPane.showMessageDialog(p1,"收款失败","failure",RMATION_MESSAGE);}}});b1.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String idtify= a1.getText();String idtifyword= new String(idtify);}});b2.addActionListener(newActionListener(){ public void actionPerformed(ActionEvent e){ String room= a2.getText();String roomword= new String(room);}});b3.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String money= a3.getText();String idtifyword= new String(money);}});b4.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String money= a4.getText();String idtifyword= new String(money);}});b5.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ String money= a5.getText();String idtifyword= new String(money);}});//面板labelPanel放标签JPanel labelPanel = new JPanel();labelPanel.setLayout(newGridLayout(7,1));labelPanel.add(a1);labelPanel.add(a2);labelPanel.add(a3);labelPanel.add(a4);labelPanel.add(a5);labelPanel.add(a6);labelPanel.add(a7);//面板fieldPanel放文本框JPanel fieldPanel = new JPanel();fieldPanel.setLayout(newGridLayout(7,1));fieldPanel.add(b1);fieldPanel.add(b2);fieldPanel.add(b3);fieldPanel.add( b4);fieldPanel.add( b5);fieldPanel.add( b6);fieldPanel.add( b7);//面板northPanel放面板lanelPanel和面板fieldPanelJPanel northPanel = new JPanel();northPanel.setLayout(newGridLayout(1,2));northPanel.add(labelPanel);northPanel.add(fieldPanel);Container cp = frame.getContentPane();cp.add(northPanel,BorderLayout.NORTH);//northPanel放在northcp.add(p1,BorderLayout.SOUTH);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(200,250);frame.setVisible(true);}}class UpperCaseDocument extends PlainDocument{ public void insertString(int offset,String string, AttributeSet attributeSet)throws BadLocationException{ string = string.toUpperCase();super.insertString(offset,string, attributeSet); }}第六个:import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.text.*;import javax.swing.border.*;public class F{private JFrame frame;private JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13;JTextArea ta = new JTextArea(20,20);JTextArea tb = new JTextArea(20,20);public static void main(String args[]){F that=new F();that.go();}void go(){frame=new JFrame("客房检查");Container contentPane=frame.getContentPane();JPanel P1=new JPanel();P1.setLayout(new GridLayout());b1=new JButton("101 \n单人间");b2=new JButton("102 \n单人间");b3=new JButton("103 \n单人间");b4=new JButton("104 \n单人间 "); b5=new JButton("105 \n单人间");b6=new JButton("201 \n双人间");b7=new JButton("202 \n双人间");b8=new JButton("203 \n双人间");b9=new JButton("204 \n双人间");b10=new JButton("205 \n双人间"); b11=new JButton("301 \n总统套房"); b12=new JButton("302 \n总统套房"); b13=new JButton("303 \n总统套房"); b1.setBackground(Color.cyan);b2.setBackground(Color.cyan);b3.setBackground(Color.cyan);b4.setBackground(Color.cyan);b5.setBackground(Color.cyan);b6.setBackground(Color.magenta);b7.setBackground(Color.magenta);b8.setBackground(Color.magenta);b9.setBackground(Color.magenta);b10.setBackground(Color.magenta);b11.setBackground(Color.pink);b12.setBackground(Color.pink);b13.setBackground(Color.pink);P1.add(b1);P1.add(b2);P1.add(b3);P1.add(b4);P1.add(b5);P1.add(b6);P1.add(b7);P1.add(b8);P1.add(b9);P1.add(b10);P1.add(b11);P1.add(b12);P1.add(b13);tb.append("房间总数:13");tb.append("\n当前占用:");tb.append("\n当前可供:");P1.add(tb);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="101 \n单人间"){ta.setText("");JFrame frame=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n101房间是否打扫:");ta.append("\n101房间里是否有家具损坏: ");ta.append("\n101房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.yellow);frame.setContentPane(p2);frame.pack();frame.setVisible(true);}else if(e.getActionCommand()=="102 \n单人间"){ta.setText("");JFrame frame=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n102房间是否打扫: ");ta.append("\n102房间里是否有家具损坏: ");ta.append("\n102房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.yellow);frame.setContentPane(p2);frame.pack();frame.setVisible(true);}else if(e.getActionCommand()=="103 \n单人间"){ta.setText("");JFrame frame=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n103房间是否打扫: ");ta.append("\n103房间里是否有家具损坏: ");ta.append("\n103房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.yellow);frame.setContentPane(p2);frame.pack();frame.setVisible(true);}else if(e.getActionCommand()=="104 \n单人间"){ta.setText("");JFrame frame=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n104房间是否打扫: ");ta.append("\n104房间里是否有家具损坏: ");ta.append("\n104房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.yellow);frame.setContentPane(p2);frame.pack();frame.setVisible(true);}else if(e.getActionCommand()=="105 \n单人间"){ta.setText("");JFrame frame=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n105房间是否打扫: ");ta.append("\n105房间里是否有家具损坏: ");ta.append("\n105房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.yellow);frame.setContentPane(p2);frame.pack();frame.setVisible(true);}else if(e.getActionCommand()=="201 \n双人间"){ta.setText("");JFrame frame1=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n201房间是否打扫: ");ta.append("\n201房间里是否有家具损坏: ");ta.append("\n201房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.cyan);frame1.setContentPane(p2);frame1.pack();frame1.setVisible(true);}else if(e.getActionCommand()=="202 \n双人间"){ta.setText("");JFrame frame2=new JFrame("检查信息");JPanel p2=new JPanel();Container cp=frame.getContentPane();ta.append("\n202房间是否打扫: ");ta.append("\n202房间里是否有家具损坏: ");ta.append("\n202房间是否交足余额: ");JButton a=new JButton("提交");p2.add(a);ActionListener al=new ActionListener(){public voidactionPerformed(ActionEvent e){if(e.getActionCommand()=="提交"){JOptionPane.showMessageDialog(ta,"提交成功 ",null,RMATION_MESSAGE);}}};a.addActionListener(al);p2.add(ta);p2.setBackground(Color.cyan);frame2.setContentPane(p2);frame2.pack();frame2.setVisible(true);}else if(e.getActionCommand()=="203 \n双人间"){ta.setText("");JFrame frame=new JFrame("检查信息");。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
import java.util.Scanner;
import org.omg.CORBA.PUBLIC_MEMBER;
public class jiudian {
static String[][] rooms ;
public static void main(String[] args) {
rooms = new String[8][8];
for (int i = 0; i < rooms.length; i++) {
for (int j = 0; j < rooms[i].length; j++) { rooms[i][j] = "NULL";
}
}
String command = "";
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入命令:");
command = scanner.nextLine();
if(command.equals("search")){
searchRoom();
}else if (command.equals("in")) {
System.out.println("请输入您需要入住的房间号:");
String roomIDString = scanner.nextLine();
int roomID = Integer.parseInt(roomIDString);
System.out.println("请输入您的姓名:");
String userName = scanner.nextLine();
inRoom(roomID,userName);
}else if(command.equals("out")){
System.out.println("请输入您需要退订的房间号:");
String roomIDString = scanner.nextLine();
int roomID = Integer.parseInt(roomIDString);
outRoom(roomID);
}else if (command.equals("quit")) {
System.out.println("欢迎再次使用");
System.exit(0);
}else {
System.out.println("输入命令有误,请重新输
入!");
}
}
}
public static void searchRoom(){
for (int i = 0; i < rooms.length; i++) {
//输出房间号
for (int j = 0; j < rooms[i].length; j++) { System.out.print((i+1)+"0"+(j+1)+"\t");
}
System.out.println();
//输出房间情况
for (int j = 0; j < rooms[i].length; j++) { System.out.print(rooms[i][j]+"\t");
}
System.out.println();
}
}
public static void inRoom(int roomID , String
userName){
if (isRoomNull(roomID)) {
//房间为空
//房间状态:NULL-->userName
int i = roomID/100-1;
int j = roomID%100-1;
rooms[i][j] =userName;
System.out.println(userName+"成功入住"+roomID);
}else {
//房间不为空
System.out.println("该房间已经有人,请重新选择!");
}
}
public static void outRoom(int roomID){
if (isRoomNull(roomID)) {
//房间为空
System.out.println("房间为空无需退房");
}else {
//房间不为空
//房间状态:userName -->NULL
int i = roomID/100-1;
int j = roomID%100-1;
rooms[i][j] ="NULL";
System.out.println(roomID+"退房成功!");
}
}
private static boolean isRoomNull(int roomID) { //801 -->i=7 j=0 -->rooms[7][0]
int i = roomID/100-1;
int j = roomID%100-1;
if (rooms[i][j].equals("NULL")) {
return true;
}else {
return false;
}
} }。