《本科毕业设计---餐饮管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《本科毕业设计---餐饮管理系统的设计与实现.doc(48页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、图书分类号:密 级:毕业设计(论文)蟠桃饭庄餐饮管理系统的设计与实现THE DESIGN AND IMPLEMENTATION OF “PANTAOFANZHUANG” FOOD MANAGEMENT SYSTEM班 级11网络转本学 号20110566138学生姓名朱晨岗学院名称信电工程学院专业名称计算机科学与技术指导教师田隽2015年6月6日徐州工程学院毕业论文徐州工程学院学位论文原创性声明本人郑重声明: 所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献
2、的个人和集体,均已在文中以明确方式标注。本人完全意识到本声明的法律结果由本人承担。论文作者签名: 日期: 年 月 日徐州工程学院学位论文版权协议书本人完全了解徐州工程学院关于收集、保存、使用学位论文的规定,即:本校学生在学习期间所完成的学位论文的知识产权归徐州工程学院所拥有。徐州工程学院有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。徐州工程学院可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。论文作者签名: 导师签名: 日期: 年 月 日 日期:
3、 年 月 日摘要近些年,餐饮行业在俯拾即是的服务行业中扮演着越来越重要的地位。如何在剧烈的竞争中占据有利地位,已成为越来越多的餐馆老板不得不思考的问题。以往餐饮行业的人工操作管理模式存在着诸多的问题,比如人工记账、收账容易出错,收入统计复杂、报表统计工作量巨大等。这一系列的问题都制约着传统餐饮业的发展。同时本系统采用Java技术与jdk1.7搭建系统平台。基本实现了现代餐饮行业的需求,实现了智能点餐、自动结账、明细查询、报表统计、菜品管理、员工管理等基本功能。本系统很好的解决了传统餐饮行业的制约,具有很高的使用价值和广泛的应用前景。关键词 :餐饮管理系统;Java;Swing技术;Eclips
4、eAbstractThis year, The status ofthe catering industryintheinnumerable service industryis play a important roal, and how to make their company stand out through the competition has became the most important problem that many managers have to face with. Such as the complex of income statistics and to
5、 numerical statements,this problemsare restricting thedevelopment of traditionalfood and beverage industry. In my system, using java and jdk1.7 build management system platform. sql2005 and swing mainstream development of technologies to achieve process standardization to achieve, The restaurant man
6、agement system can achieve a basic needs of the industry as will as achieve the intelligent ordering, automatic billing, detailed inquiry, the basic functions of reporting statistics, dishes management, employee management. And I believe using the system can break up the restrict of thedevelopment i
7、n traditionalfood eare and beverage industry.And it is value to use.Keywords: food management system Java swing EclipseIII徐州工程学院毕业论文目 录1 绪论11.1系统开发背景及意义11.1.1系统开发背景11.1.2系统开发意义11.2系统开发内容11.3 论文的组织结构12相关技术简介32.1 Java技术简介32.1.1 Java SE32.1.2 GUI组件32.2 SQL Server 2005数据库42.2.1关系模型42.2.2 SQL语言52.3 本章小结5
8、3 系统需求分析63.1 现状分析63.2 功能要求63.3 可行性分析63.3.1 经济可行性63.3.1 技术可行性73.4 本章小结74 系统设计84.1数据库设计84.1.1数据库需求分析84.1.2 数据库概念设计124.1.3数据库表的设计144.2 系统模块设计154.2.1用户登陆模块154.2.2 开台签单工作区154.2.3 自动结账工作区154.2.4 结账报表工作区154.2.5 餐台管理154.2.6 菜单管理164.2.7 菜系管理164.3本章小结165 系统实现175.1 文件夹结构的实现175.2 数据库相关实现175.2.1数据库的连接175.2.2数据库操
9、作195.3系统登陆界面195.4 系统主界面215.5看图点菜功能225.6 显示系统时间225.7 开台签单工作区235.8 自动结账工作区255.9 结账报表工作区285.9.1 日结账报表285.9.3 年结账报表305.10 后台管理工作区315.10.1菜品管理315.10.2 台号管理325.10.3 菜系管理335.11 用户管理335.12 本章小结34结论35致谢36参考文献37附录38421 绪论1.1系统开发背景及意义1.1.1系统开发背景近几年来,人们越来越重视自己的饮食起居问题,越来越多的人无时不刻的都在关注着身边的美食街、甜品店,餐饮行业一直处于不断增长的态势。然
10、而,随着就餐人数的增加,很多餐馆出现了忙不过来的现象。随着餐馆数量的增加和规模的扩大,人工管理模式已经无法适应高工作效率,低员工成本和快速便捷的决策等现代化经营管理的需求。1.1.2系统开发意义蟠桃饭庄餐饮管理系统的开发,顺应了现代餐饮行业的需求。它将应用软件与传统的人工管理相结合,可以迅速快捷的实现餐馆的自动收银结账、开台点餐、后台管理等繁杂的操作,大大的减轻经营者的工作量,为餐厅的经营者节省大量的人力财力。总而言之,餐饮管理系统的使用,既能提高工作效率,又能节省人力资源,对餐饮行业的发展,顾客的便捷就餐等方面都就有重要意义。1.2系统开发内容蟠桃饭庄餐饮管理系统根据餐饮行业的特点和实际情况
11、,从专业角度对餐馆的经营提供帮助。本文主要介绍利用Eclipse开发工具来开发基于JAVA的蟠桃饭庄餐饮管理系统的设计与实现,登录模块供不同权限的用户登录,开台点餐模块可供用餐者自动点餐、自助结账,结账报表模块提供日、月、年三级报表利于管理者的管理。后台管理模块供管理员进行菜品及人员管理。1.3 论文的组织结构全文共分五章,各章的内容安排如下:第一章,介绍了本系统的开发背景及意义,和系统开发的一些大致信息。第二章,介绍了本系统的需求分析,在经济、技术上可行性的分析以及分析应该具备哪些功能。第三章,介绍了设计本系统的一些相关技术,包括JAVA简介,重要的Swing组件介绍以及SQL2005相关知
12、识点介绍。第四章,介绍了数据库设计、系统E-R图、数据库表的设计;系统设计,系统数据流图、系统流程图等。第五章,本章主要包括用户登录功能的实现、开台签单工作区的实现、点击图片自动点菜功能的实现、自动结账工作区的实现、结账报表功能的实现以及菜品、台号、菜系等后台管理功能的实现2相关技术简介2.1 Java技术简介Java是是面向对象的程序设计语言。所谓面向对象即java语言将数据还有一些相关的操作结合在一起,是指成为一个整体,这个整体就是我们所说的“对象”。她的命名很有意思,是由印尼的一座生产咖啡豆的岛屿Java岛而得名。据权威机构统计表明,java语言是当今使用人数做多的一种计算机编程语言(C
13、语言次之)。Java语言之所以相当的流行是因为它具有简单、健壮、安全等其他编程语言无法比拟的优点。2.1.1 Java SEJava SE包括用于开发Java Web服务的类库,同时,Java SE为Java EE提供了理论基础。Java SE(Java Platform, Standard Edition,Java标准版)就是基于JDK和JRE的平台。 2.1.2 GUI组件GUI是java API的重要组成部分。主要应用于各种图形用户接口设计和互联网动态网页编程,涉及到内容丰富的java编程技术和概念。例如组件、容器、事件处理和布局;在网页编程中涉及到apple、HTML、和浏览器,等等。
14、“一画胜过万句词”,GUI起到画面作用,给用户带来看到就会感受到(look and feel)的效果,达到终端应用程序对用户更加友好的目的。GUI组件继承图如图2.1所示。 The component hierarchyComponent ContainerComponentWindowFrameJPanelJPanelJPanelJPanelJPanelJFrame图2.1GUI继承图2.2 SQL Server 2005数据库 Microsoft SQL Server 2005几种功能:l 提取、转换和加载(ELT)l 关系数据仓库l 多维数据库和数据挖掘l 分析服务l 报表管理数据库系统
15、的特点如下:1. 数据结构化文件系统与数据库系统的根本区别之一就是数据结构化。2. 数据冗余度小共享性高所谓数据冗余简单来说就是指数据库中的数据多次重复出现,这是十分浪费硬件资源的而且不利于数据的管理。数据库管理系统允许多个用户或应用同时存取数据,实现数据的共享,因此可以降低数据冗余2。3. 数据独立性高数据与应用程序是独立的,互不依赖,使得应用程序设计与维护的工作量都减轻了不少。4. 统一管理和控制功能数据库管理系统必须包括以下四个方面的内容:l 数据的安全性l 数据的完整性l 数据的并发性l 数据库的恢复2.2.1关系模型关系模型用关系表示各种实体以及实体间的联系。关系模型的数据操作主要包
16、括静态操作和动态操作两种,静态操作即查询操作;动态操作又可以分为添加、修改和删除操作。关系模型的特点有:l 建立在严格的数学概念基础上;l 概念单一,结构简单直观、易理解、语言表达简练;l 保证数据操纵语言的一致性;l 利用公共属性链接,实体间的联系容易实现;l 数据独立性高,保密性好。2.2.2 SQL语言SQL应用十分广泛,目前主流数据库上基本都是使用的SQL语言。SQL语言具有以下几个特点:l 一体化,SQL语言集DDL、DML、DCL与一体。l 高度非过程化l 统一的语法结构l 简单易学易用2.3 本章小结本章主要介绍了完成系统的相关技术,包括Java开发语言、Java SE开发平台、
17、以及系统界面开发主要使用的GUI相关组件和各个组件之间的继承关系。本章在后半部分介绍了数据库的相关知识和重要特点。 3 系统需求分析3.1 现状分析传统餐饮行业主要靠人工自行管理,但随着经济社会的不断发展,越来越多的人习惯了去餐馆就餐,因此单单凭借简单的人工管理已经无法满足餐馆的发展要求。我么可以轻松地总结出传统餐饮行业以下几个方面的不足:l 数据的维护效率低,不易保管;l 菜品查询不方便,劳动力成本过高;l 点菜方式单一l 管理饭店资源(菜品、人员)不方便;l 反映缓慢和容易失去商机。3.2 功能要求本系统侧重餐馆点菜收银功能的实现,同时为了弥补上述餐饮行业普遍存在的缺陷,依据餐饮行列的特点
18、,本系统需要实现以下目标:n 操作简单方便,界面简洁大方;n 方便、快捷的开台点菜功能;n 智能化定位菜品功能;n 快速查看开台点菜的功能;n 自动结账的功能;n 日消费额汇总统计;n 月消费额汇总统计;n 年消费额汇总统计;n 系统运行稳定、安全可靠。3.3 可行性分析所谓可行性分析就是指一个问题的解决在经济,技术等方面是否能够实现。如果项目开发前期不对可行性进行深入的分析就开始开发,中途发现项目根本无法实现,将会给开发者带来巨大的损失。因此,可行性分析在项目开发过程中起着十分重要的作用。3.3.1 经济可行性所谓经济可行性就是考虑采用系统的成本和收入问题。一个项目的开发是否能够为使用者带来
19、便利,是否能够开发者带来经济利益。开发“蟠桃饭庄”餐饮管理系统,可以很大程度的降低餐馆经营者人力和物力。购置一套系统的成本大概在千元左右,而且后期基本不需要维护,而本系统的使用可以使餐馆少雇佣三人左右,每月可节省近万元成本。3.3.2 技术可行性技术可行性就是从技术的角度上看,是否可以完成这个系统平台的开发。即现有的已经掌握的技术可以解决这个系统开发的要求。本系统主要采用JAVA和SQL Sever 2005开发完成,运用JAVA Swing 技术可以快速便捷的完成相关界面的开发。3.4 本章小结本章主要介绍了系统需求分析和可行性分析,包括餐饮行业当前的管理现状,还有本系统需要实现的功能分析。
20、4 系统设计4.1数据库设计数据库的设计就是根据数据库需求分析所得出来的系统功能要求设计出相应的表格的过程。一个好的系统的开发离不开完善的数据库设计。4.1.1数据库需求分析1.数据表的基本信息蟠桃饭庄餐饮管理系统的需求包括人员管理,图片点菜,助记码获取菜品,快速结账,报表统计等功能。主要涉及的数据表包括员工表,餐台表,菜品表,顾客消费表,为了使系统更加优化,还在数据库中添加了菜品分类表。2.用户功能需求(1)开台签单功能开台点菜:顾客可以指定自己的就餐位置,营业员也可以根据就餐人数为顾客安排桌位。同时用户可以采用多种方式点菜。例如用户可以采用点击菜品图片的方式点菜或者采用菜品编号点菜、助记码
21、等。取消点菜:顾客误点了某些不需要消费的菜品时可以操作取消。确认菜单:顾客开台点菜确认无误之后送交后厨。(2)自助结账功能统计消费:顾客点菜完毕自动计算所有消费额。即应收款。实收输入:操作员输入实收金额。计算找零:输入实收多少钱和应收多少钱自动计算找零。(3)菜品管理添加菜品:为丰富餐馆菜品种类,操作员可以手动添加菜品。删除菜品:可将长期无人消费的菜品或者当前原材料已经用尽的菜品从菜品表中“删除”。(4)菜系管理添加菜系:为方便菜品拓展,操作员可手动添加菜品种类。删除菜系:操作员可以手动删除菜品。(5)用户管理添加用户:为方便员工管理,可以为系统添加新员工。删除用户:可删除已不存在的员工,使其
22、无法登陆系统。(6)报表管理日结账报表:统计每日收入总金额,以及每道菜的销售次数,便于餐馆储备菜品原材料。月结账报表:统计该月份每天的收入总金额,以及该月的总收入,便于分析顾客就餐规律,便于安排餐馆工作。年结账报表:统计该年每月的收入情况,和年收入总额。便于分析餐馆的淡季和旺季,利于餐馆下一年的总体工作安排。3.系统层次图根据上述功能需求分析,可大致将系统分为前台服务部分,后台管理部分,结账报表部分,以及系统安全四大部分。其中前台服务包括开台点菜,智能化菜品获取,自动结帐三块;系统的安全性,包括用户管理、修改密码两部分。系统功能层次图如图4.1所示。蟠桃饭庄餐饮管理系统后台管理结账报表系统安全
23、用户管理日结账报表月结账报表年结账报表开台点菜菜系管理菜品管理台号管理自动结账智能获取菜品前台服务修改密码图4.1 餐饮管理系统功能图4.业务流程图本系统业务流程条理清楚,简单易懂。用户登录系统后即可以进行相关操作,包括前台开台点菜的功能;后台菜品,菜系,台号管理功能;报表查看等功能。本系统业务流程如图4.2所示。用户登录界面登陆前台管理后台管理报表管理安全管理图片点菜用户管理台号管理菜品管理菜系管理日结账统计月收入统计年收入统计开台点菜 修改密码删除用户添加用户菜品添加结账删除添加图4.2 系统业务流程图5.数据字典一般的,数据库管理人员将数据字典分为主动和被动两种类型。本系统数据字典部分如
24、下:表4.3用户信息表数据流系统名:蟠桃饭庄餐饮管理系统条目名:用户信息来源:用户去处:用户信息删除数据结构:用户信息: id,name,sex,birthday,id_card,passord,freeze简要说明:用户信息表主要是员工的登陆信息,以及对员工的添加,删除表4.4餐台信息表数据流系统名:蟠桃饭庄餐饮管理系统条目名:餐台信息来源:餐馆餐台信息去处:顾客开台数据结构:管理员信息: num,seating简要说明:餐台信息主要用于顾客的开台或者订桌。表4.5菜单信息表数据流系统名:蟠桃饭庄餐饮管理系统条目名:菜单信息来源:餐馆菜单信息去处:菜品修改数据结构:管理员信息: number
25、,sort_id,name,code,unit,unit_price,statement简要说明:菜单信息,一般由用户对菜单信息做相应修改表4.6菜品信息表数据流系统名:蟠桃饭庄餐饮管理系统条目名:餐品信息来源:餐馆菜品信息去处:菜品添加删除数据结构:管理员信息:id,name简要说明:菜品信息,主要是操作员对菜品信息的添加与删除表4.7消费单信息表数据流系统名:蟠桃饭庄餐饮管理系统条目名:顾客消费信息来源:结账消费去处:结账报表数据结构:管理员信息:num,desk_num,datetime,money,user_id简要说明:查看,统计酒店收入情况表4.8消费项目信息表数据流系统名:蟠桃饭
26、庄餐饮管理系统条目名:顾客点菜信息来源:顾客点菜去处:日售菜品统计数据结构:管理员信息:id,order_fromk_num,menu_num,amount ,total简要说明:统计日售菜品数量4.1.2 数据库概念设计在系统需求分析之后,接下来要做的就是数据库的概念设计。概念数据库模型是连通现实世界与机器世界的桥梁,它不仅独立于数据库的逻辑结构,而且与具体的数据库管理系统(DBMS)相互独立3。本系统餐台信息表的E-R图如图4.9所示。即用台号和可容纳的座位数来描述餐台信息。本系统菜系表用序号和名称两项来描述菜系的相关信息,菜系信息表的E-R图如图4.10所示。餐台台号座位数 图4.9 餐
27、台信息表E-R图菜系序号名称图4.10 菜系信息表E-R图在这个系统中,用来描述菜品信息包括的数据项有:菜品序号、名称、应属菜系、查询码、单位和单价。其中查询码为菜品名称的拼音缩写。例如,菠菜的助记码为“bc”,通过输入查询码可以快速获得菜品信息。菜品信息表的E-R图如图4.11所示。菜品单价助记码单位所属菜系名称编号图4.11 菜品信息表E-R图为了描述顾客的消费记录,系统设计了消费单表。例如消费单号,就餐台号,消费时间和操作用户等。消费单表的E-R图如图4.12所示。消费单编号操作用户消费金额消费餐台消费时间图4.12 消费单信息表E-R图消费项目信息表的E-R图如下所示。消费项目消费额消
28、费数量消费菜品所属消费单图4.13 消费项目信息表E-R图4.1.3数据库表的设计有了前两步的基础就可以轻松地实现数据库表的设计。本系统包括6张基本表:用户表,餐台表,菜单表,菜系表,消费单表和消费项目表。用户表主要用来表示用户的基本信息。如表4.14所示。表4.14用户表列名数据类型约束键是否允许空备注idintPK否用户IDnameVarchar(8)否用户名sexChar(4)否性别Shengridatetime否生日id_cardchar(20)否身份证号passwordchar(20)否密码freezeChar(4)否用户状态餐台表用来为每张餐桌编号,并且同时记录了每张餐台可坐多少人
29、,利于餐馆对餐桌的管理。如表4.15所示。菜单表主要用来描述菜品的相关信息。如表4.16所示。表4.15 餐台表列名数据类型约束键是否允许空备注numVarchar(5)PK否就餐台号seatingint否容纳人数表4.16 菜单表列名数据类型约束键是否允许空备注numChar(8)PK否序号Sort_idint否编号namechar(8)否菜名codeVarchar(8)否查询码unitVarchar(8)否单位Unit_priceint否单价stateChar(4)否状态菜系表是菜品的分类信息,用来记录每道菜所属的类别,例如可以包括炒菜类,凉菜类等等。如图4.17所示。表4.17 菜系表列
30、名数据类型约束键是否允许空备注idintPK否菜系序号namechar(20)否系名4.2 系统模块设计4.2.1用户登陆模块登陆窗口的设计是任何应用程序设计都必不可少的部分,其主要功能是防止非法用户登录,保证系统安全。登陆系统允许餐馆工作人员登陆,并可以实现密码重置。4.2.2 开台签单工作区开台签单工作区功能:l 开台:根据就餐人数或喜好选择菜台l 点菜:顾客点菜,可以采用查询码,菜品图片等多种种方式实现l 签单:顾客确认菜单l 加菜:顾客可中途加菜l 查看签单和开台信息:在开台列表中显示4.2.3 自动结账工作区自动结账工作区的设计主要实现三个功能:l 自动计算当前菜单消费金额l 输入实
31、收金额l 自动计算找零金额4.2.4 结账报表工作区包括日结账报表,月结账报表和年结账报表三部分。l 日结账报表:实现对当天营业情况的统计,包括消费编号,就餐台号,开台时间和该餐台 消费金额等。l 月结账报表:对每月营业状况的统计。l 年结账报表:对一年营业情况的统计。4.2.5 餐台管理l 添加餐台:操作员可以手动添加餐台以便于餐馆就餐位置的拓展。包括台号和座位数两项。l 删除餐台:操作员可以手动删除餐台以便于餐馆就餐位置的更新。l 修改座位数:如果发现之前添加的餐台信息有误,操作员可以手动修改餐台的座位信息。4.2.6 菜单管理l 添加菜品:操作员可以手动添加新菜品以便于餐馆菜品的拓展。包
32、括菜品名称,编号,助记码,价格,单位等信息。l 删除菜品:操作员可以手动删除菜品的相关信息。即当某菜品无销量时可以将其删除。l 修改菜品信息:当发现菜品相关信息发生错误时,操作员可以手动进行修改菜品单价助记码等信息。4.2.7 菜系管理l 添加菜系:操作员可以手动添加新菜系以便于餐馆菜系的拓展。l 删除菜系:操作员可以手动删除菜系的相关信息。即当某菜系无销量时可以将其删除。l 修改菜系信息:当某菜系命名发生错误时,操作员可以手动修改该菜系的名称。4.3本章小结本章重点讲了蟠桃饭庄管理系统的相关设计,其中包括数据库方面设计和系统功能界面部分的设计。系统功能界面的设计包括登陆模块,结账模块,报表模
33、块等等。5 系统实现5.1 文件夹结构的实现条理清晰的文件夹组织结构对任何一个系统的设计都是必不可少的。由于本系统所涉及的窗体比较多,为了方便查找和使用,采用了文件夹名与窗体对应的原则,即将所用到的窗体进行分类,然后放入对应的文件夹中,这样一来既有利于前期的项目开发,有便于系统的后期维护。系统的组织结构如图5.1所示。图5.1 系统文件夹组织结构图各文件夹具体代表内容如下:com.mwq:系统主函数,完成系统运行com.mwq.dao:数据库相关操作com.mwq.frame:系统登陆和主界面界面实现com.mwq.frame.check_out:结账报表对话框报com.mwq.frame.m
34、anage:后台管理功能的实现com.mwq.frame.user:系统安全报控制用户登录com.mwq.mwing:自定义组件com.mwq.tool:工具类包img:存放所需图片5.2 数据库相关实现5.2.1数据库的连接任何系统的开发都必不可少的用到数据库,因此实现java与数据库的链接是系统的实现过程中相当重要的一步。本系统采用jdbc:odbc方式连接数据库,关键代码如下。public class JDBC private static final String DRIVERCLASS = com.microsoft.jdbc.sqlserver.sqlserverdriver;pr
35、ivate static final String URL =jdbc:odbc:hotel ;private static final String USERNAME = sa;private static final String password= ;private static final ThreadLocal threadLocal = new ThreadLocal();static try Class.forName(driverclass).newInstance(); catch (Exception e) e.printStackTrace();public static
36、 Connection getConnection() Connection conn = threadLocal.get(); / 从线程中获得数据库连接if (conn = null) try conn = DriverManager.getConnection(url,username,password); / 创建新的数据库连接 thseaddfgl.set(conn); catch (SQLException e) e.printStackTrace();return conn;public static boolean closeConnection() /closeboolean
37、 isClosed = true;Connection conn = threadLocal.get(); / 从线程中获得数据库连接threadLocal.set(null); /clesrif (conn != null) / 数据库连接可用try conn.close(); catch (SQLException e) isClosed = false;return isClosed;5.2.2数据库操作对数据库的操作分为静态操作和动态操作。静态操作即查询操作。通过executeQuery(String sql)语句实现;动态操作通过executeUpdate实现。5.3系统登陆界面显然
38、JPanel类不支持将密码框,下拉列表框绘制到图片上方。对于这个系统,绘制背景图片的功能是通过覆盖Jpanel类的paintComponent(Graphics g)方法实现的。然后就可以在图片上添加按钮和其他组件来实现用户登录。系统登陆界面如图5.2所示。图5.2 系统登录界面创建登录面板的关键代码:final MPanel panel = new MPanel(this.getClass().getResource(/img/land_back.jpg);panel.setLaylout(newgridbagLayout();/ 设置面板的布局管理器为网格组布局gotcontentPane
39、().add(panel, baordelayout.CENTER);实现登陆的主要代码:class LandButtonActionListener implements ActionListener public void actionPerformed(ActionEvent e) String username = usernameComboBox.getSelectedItem().toString();/登录用户的名称if (username.equals(请选择) JOptionPane.showMessageDialog(null, 请选择登录用户!, 友情提示,JOption
40、Pane.INFORMATION_MESSAGE);/ 弹出提示resetUsernameAndPassword();char passwords = passwordField.getPassword();String inputPassword = turnCharsToString(passwords);/if (username.equals(TSoft) if (inputPassword.equals(111) land(null);String infos = 请立刻单击“用户管理”按钮添加用户!,请重新添加用户并登陆! ;JOptionPane.showMessageDialo
41、g(null, infos, 友情提示,JOptionPane.INFORMATION_MESSAGE);/ 弹出提示 else / 密码错误JOptionPane.INFORMATION_MESSAGE);/ 弹出提示passwordField.setText(111);/ 将密码设置为默认密码 else if (inputPassword.length() = 0) JOptionPane.showMessageDialog(null, 请输入登录密码!, 友情提示,JOptionPane.INFORMATION_MESSAGE);/ 弹出提示resetUsernameAndPassword();/ 恢复登录用户和登录密码Vector user = Dao.getInstance().sUserByName(username);String password = user.get(5).toString();/ 获得登录用户的密码if (inputPassword.equals(password) / 查看登录密码是否正确land(user); else / 登录密码错误友情提示, JOptionPane.INFORMATION_MESSAGE);resetUsernameAndPassword();private void resetUsernameAndPas