基于java的超市管理系统设计(含源文件)
欢迎添加微信互相交流学习哦!
项目源码:https://gitee.com/oklongmm/biye
基于Java的超市管理系统的设计与实现
摘 要
论文摘要:随着经济的发展,社会的进步,计算机越来越深入到我们日常的工作学习及生活中,成为我们日常生活中不可缺少的辅助工具。面对当前超市行业普遍存在的管理手段、管理技术落后等问题,使用计算机管理在很大程度上可以帮助超市克服这些困难。超市管理系统可以提高超市的管理水平,节省大量人力、物力和财力,使经营管理更加科学有序、经营物流清晰,经营状况详实、准确。作为计算机应用的一部分,使用计算机对超市信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高超市管理的效率。
此次系统主要包括前台应用程序的开发以及后台数据库的建立和维护两个方面。对于前者要求系统应用程序功能完备,能够采用人机交互的方式,界面美观友好,对于后者要求建立起数据一致性和完整性,保证数据的安全性,能够对系统内各类信息进行高效准确的管理,最大限度地实现系统的易维护性和易操作性,本系统选择的是在Eclipse平台上使用Java语言作为前台开发工具,Access作为后台数据库平台,通过Access将系统所需的数据和用户操作的数据与前台连接起来。
关键词:数据库;人机交互;Eclipse;Access
目 录
摘 要 1
目 录 2
1 绪论 1
1.1 系统的开发背景以及意义 1
1.2 系统的研究现状 1
1.3 实训目的 2
1.4 实训任务及环境 2
1.4.1 实训任务 2
1.4.2 实训环境 2
2 需求分析 3
2.1 系统设计目标 3
2.2 业务流程分析 3
2.3 系统功能需求 4
2.4 性能需求 6
2.5 本章小结 6
3 总体设计 7
3.1 设计思想 7
3.2 设计原则 7
3.3 系统总体功能设计 8
3.4登录管理模块的设计 9
3.4.1登录的功能设计 9
3.4.2登录的界面设计 10
3.5 商品管理模块的设计 10
3.5.1商品管理的功能设计 10
3.5.2商品管理的界面设计 11
3.6数据库设计 12
3.6.1 数据库概念结构设计 12
3.6.2 数据库逻辑结构设计 13
4 详细设计与实现 15
4.1 登录管理模块 15
4.2 商品管理模块 16
4.3会员管理模块 19
5 系统测试 21
5.1 测试的意义 21
5.2 模块测试 21
5.3 整体测试 21
5.4 本章小结 22
6 实训小结 23
6.1 总结 23
6.2 展望 24
6.3 致谢 24
附 录 26
1 绪论
1.1 系统的开发背景以及意义
随着现代科学技术的迅速发展,计算机技术已经渗透到各个领域,成为各行业必不可少的工具,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对数据库的进一步开发和利用显得尤为迫切。作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方式,因此加快超市的信息化进程是必不可少的。我国的超市在20世纪90年代初期形成,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。随着经济的快速发展,超市的经营管理也变得日益复杂,早期的售货员为主形式已经不能满足现有销售业的发展,这样就迫切需要引入新的管理技术。
超市管理系统是用计算机管理超市业务的一种计算机应用技术的创新,在计算机还未普及之前超市管理都是由工作人员手工书写的方式来进行操作的,既不方便,也容易发生错误或遗失,现在一般的超市都采用计算机智能化管理,而采用计算机作为工具的计算机超市管理程序则是最为方便的管理方式之一,它可以帮助管理员进行更为有效的管理工作,减少资金占用并提升超市综合竞争力。
1.2 系统的研究现状
虽然各大超市近年来获得了很大的发展,各大中小型超市如雨后春笋般地出现,但由于中小型超市存储空间较小,货品主要是不固定位置弹性运作,这样所有货品剩存货物主要由营业员靠记忆力来记忆,常常是柜台缺货无法及时找到货补.或是存货已尽未及时联系供货商,造成缺货,影响超市正常销售。而且现阶段,大多数项目都集中在人事、工资及仓库管理方面,很少涉足采购管理领域。
中小型超市在我国经济发展中具有重要地位,目前我国的中小型超市数量多,地区分布广泛,行业分布跨度大。随着全球经济一体化的发展和电子商务的星期,中小型超市之间的竞争将越来越激烈。网络及电子商务的迅猛发展突破了时间,空间的局限性,给中小型超市带来了更多的发展机会,同时也增大了超市行业之间的竞争强度。这就要求中小型超市必须改变经营管理模式,提高运营效率。目前,我国中小型超市的信息化水平还很低。随着技术的发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,超市行业采用电脑管理进货,库存,销售等诸多环节也成为必然趋势。
1.3 实训目的
1. 掌握Java的图形用户界面设计方法。
2. 理解并掌握Java的事件处理机制。
3. 理解并掌握Java的I/O处理方法,数据库访问技术。
4. 能够综合所学的Java程序设计、数据结构、数据库原理等计算机专业相关知识设计并开发一个具有一定应用价值的管理信息系统。
1.4 实训任务及环境
1.4.1 实训任务
综合使用所学习的Java程序设计、、数据结构、数据库原理等计算机专业相关知识,设计并开发一个基于Java语言的超市管理系统。
1.4.2 实训环境
本系统选择的是在Eclipse平台上使用Java语言作为前台开发工具,Access作为后台数据库平台,通过Access将系统所需的数据和用户操作的数据与前台连接起来。
2 需求分析
需求分析在整个软件开发过程中非常重要,是软件工程中不可或缺的部分。软件需求分析就是对目标系统提出完整、准确、清晰、具体的要求。本章对超市管理系统具体的应用需求进行了描述,从业务流程到设计目标,以及功能需求,性能需求等几个方面进行了介绍。
2.1 系统设计目标
本超市管理系统的对象主要是广大中小型超市,超市管理员以及超市售货员经常面临琐碎而又繁重的工作,需要管理员及售货员记忆的东西也会很多,因此超市管理的效率普遍不高,为了提高超市管理的效率,开发了超市管理系统。例如,概括出具体的期望如下
功能目标:拓展更多的系统功能,增加更多创新点,尽量使本系统更加全面和完善。在后台管理处,输入超市管理员账号和密码可以进入管理界面,可以对会员信息进行管理;可以对商品的增删查改进行管理。
性能目标:良好的系统运行环境,操作简单,方便超市管理员及售货员与收银员的使用。
人性化目标:系统界面友好;前台界面布局的设计美化和人性化,实现对多种框架的应用,展现更好界面效果,增加更多用户体验。
2.2 业务流程分析
本系统主要的功能是实现中小型超市对商品管理,会员管理的操作,其业务流程如下:
1. 首先需要管理员凭借自己的账号密码登录系统
2. 接下来会进入一个总的菜单,管理员需要选择对应的功能
3. 商品管理区可以实现对商品信息的增删查改等的操作
4. 会员管理区可以实现对会员信息的增删查改等的操作
根据以上对系统的业务流程的描述,画出系统的业务流程图,如图2-1所示。
图2-1 系统业务流程图
2.3 系统功能需求
本平台是基于Java语言的一个超市管理系统,主要功能是为广大的中小型超市提供一些日常的琐碎工作的管理,使得超市管理员能够从琐碎的管理事物中抽身出来,节省不必要的精力,从而可以更高效更好地完成工作。根据超市管理的实际需要,将本系统划分为几个功能模块,分别是超市管理员的登录注册操作,对商品信息的管理,对员工信息的管理,对会员信息的管理操作,对进货信息的管理操作以及对退货信息的管理等操作。
1.系统整体功能描述:超市管理系统主要就是帮助超市管理员实现对超市琐碎工作的管理,包括对商品的增删查改操作,验证用户会员身份,以及对会员信息的增删查改操作等功能于一身的管理系统,系统可视化界面功能划分清晰,分为几个不同的栏目,每一个功能都包含在对应的一个栏目下。
总的系统用例图如图2-2所示
图2-2总的系统用例图
图2-2售货员的系统用例图
2.会员信息管理的功能描述:这里包括对会员信息的增加操作,对会员信息的删除操作,对会员信息的修改操作,对会员信息的查询操作,查询又可细分为查询全部,根据编号查询,根据联系方式查询。
3.商品信息管理的功能描述:这里包括对商品信息的增加操作,对商品信息的删除操作,对商品信息的修改操作,对商品信息的查询操作,查询又可细分为查询全部,根据编号查询,根据名称查询,根据类别查询。
2.4 性能需求
对于一个超市管理平台来说,系统能够稳定安全的运行非常重要,根据超市管理的需求,需要满足以下几个性能需求。
1.及时性和准确性:当超市管理员使用本平台时,需要能够及时得到商品的信息,当管理员删除商品时候提示操作成功或者失败的信息,在前期设计时候充分考虑本平台的功能实现,并及时准确的获取用户所购买商品信息。
2.适用性:一个良好的平台设计,需要有友好的交互界面,才能满足超市管理员和用户使用需求,特殊情况下需要给出提示,能够使使用者最大程度方便使用。设计前期还要考虑系统是否稳定,只有拥有良好的稳定性才能使该平台更加长久使用,这样才能长期的留住使用者。
2.5 本章小结
本章主要介绍了超市管理系统的主要功能,并通过用例图和用例描述表,详细介绍了该平台主要功能的需求分析,主要包括对前台用户登录注册、后台管理员管理以及主要的商品管理、商品结算进行了分析,最后通过性能需求的分析详细描述了本系统开发的特点。
3 总体设计
本章设计的主要任务是介绍系统的总体功能模块划分和详细设计,根据需求分析的描述,对本系统的设计从功能上详细划分,并把每一个功能模块分为界面设计和功能设计两块,通过图形设计和类的设计详细展示了每一个功能设计的步骤,再加上语言描述清晰地写出了每一个设计理念和设计目的,这样能使用户更加了解系统中各个模块的功能作用。
3.1 设计思想
(1)系统分成几个相对独立的模块,但这些模块都进行集中式管理。
(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。作为应用程序有较强的可操作性和扩展性。
(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。
3.2 设计原则
为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了如下原则:
(1)合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如产品进货、销售等工作。
(2)实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。
(3)准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如:类型匹配,长度不超限等)。
(4)易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。
(5)源程序可读性原则:为了便于其他设计,维护人员读懂代码或以后的代码修改,软件升级维护,即可能做好代码注释工作。
(6)优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简介明了,也方便了将来的维护。
(7)安全性原则:可以为该系统的用户设置用户权限。
3.3 系统总体功能设计
系统设计是一个把软件需求转换成用软件系统表示的过程。通过分析和研究,做出了超市管理系统的总体设计规划,这部分通过分析每一个模块来设计,根据划分的模块功能进行划分架构。
系统的功能结构图如图3-1所示。
图3-1 系统功能结构图
本超市管理系统主要分为三个模块,分别是:登录、商品管理以及会员管理模块。
登录管理模块:登录登录模块主要实现管理员登录的功能。
商品管理模块:实现商品增删查改管理功能,查询操作可具体分为查询全部,按编号查询,按商品名称查询,按商品类别查询。
会员管理模块:实现了会员信息增删查改的功能,查询操作可具体分为查询全部,按会员编号查询,按会员联系方式查询。
3.4登录管理模块的设计
这部分主要是用户的登录,主要是对用户信息的功能设计。
3.4.1登录的功能设计
登录的功能类图如图3-5所示。
图3-2登录功能类图
登录模块的功能主要是由loginform模块完成的,由loginbean与其对应完成对管理员登录验证码的判断。核心代码如下:
Database DB = new Database();
this.userName = u;
String pass=null;
sql="select password from Register where userName='"+userName+"'";
try{
DB.OpenConn();
rs = DB.executeQuery(sql);
if(rs.next()){
pass= rs.getString("password");
}
else
pass = null;
}
catch(Exception e){
}
3.4.2登录的界面设计
如下图所示是登录的界面效果:
图3-3登录界面效果图
3.5 商品管理模块的设计
商品管理模块主要实现如下功能:
① 增加商品信息
② 删除商品信息
③ 修改商品信息
④ 查询全部商品信息
⑤ 按商品编号查询商品信息
⑥ 按商品名称查询商品信息
⑦ 按商品类别查询商品信息
3.5.1商品管理的功能设计
商品管理的类图如下所示:
图3-4商品管理的类图
类图显示了不同的类之间的
3.5.2商品管理的界面设计
商品管理的界面分8个部分,一个总的界面和上面所列的七个部分,这里就列举其中两个。
图3-5系统运行主界面
图3-6 添加会员信息界面
3.6数据库设计
数据库是项目设计的关键,在系统中我们用数据库来存储数据,用于统计、分析和查询,数据库设计主要包括:数据库分析,数据库的设计与实现。
3.6.1 数据库概念结构设计
通过需求分析我们可以将用户的需求抽象成信息结构进而演化成概念设计模型阶段,这个过程就是概念结构设计。
图3-7系统E-R图
数据库中体现为对数据的操作。将用户需求抽象为信息结构,由于实体属性数目众多,所以选择了用文字对每一个实体的属性进行描述,并以E-R图的形式清晰的描述了管理员、用户、功能模块之间的关系
3.6.2 数据库逻辑结构设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库系统时应该首先充分了解拥护各个方面的要求,包括现有的以及将来可能增加的需求。
现在需要将上面的数据库概念转化为Access数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。根据数据库的需求分析和概念结构设计,设计了名称为Goods的数据库。数据库由下面多个表格组成,各个表格的设计结果如下表所示,每个表格表示数据库中的一个表。
表2-1用户信息表Person
表2-2商品信息表Goods
表2-3管理员登录信息表Register
4 详细设计与实现
本章主要介绍系统功能模块的详细设计与实现,通过系统的运行图片展示以及操作的说明来全方位向你展示系统的运行效果。
4.1 登录管理模块
登录模块主要实现如下功能:
管理员登录
系统启动后,将出现如图4-1所示的用户登录窗体,当用户输入完用户名和密码,单击登录按钮后,将对用户信息进行判断。如果没有输入用户名和密码或输入的用户名和密码有误或者不存在,将出现消息框提示。否则的话用户登录成功,则进入相应的页面。
图4-1登录界面
登录成功后,就会进入系统运行的主界面菜单,在主界面菜单可以再继续选择需要使用的功能,如图4-1所显示的就是系统运行主界面。
图4-2系统运行主界面
4.2 商品管理模块
商品管理模块主要实现如下功能:
⑧ 增加商品信息
⑨ 删除商品信息
⑩ 修改商品信息
⑪ 查询全部商品信息
⑫ 按商品编号查询商品信息
⑬ 按商品名称查询商品信息
⑭ 按商品类别查询商品信息
如图4-3是添加会员信息界面
图4-3 添加会员信息界面
修改会员信息之前需要根据编号找到这个人,在页面上将信息显示出来,修改对应的信息,再点击最下部的修改即可完成修改。下面分别将修改界面,查询编号界面,以及修改成功时弹出的消息框显示如下:
图4-4 修改会员信息界面
图4-5 查询编号界面
图4-6 会员信息修改中界面
图4-7 会员信息成功界面
下面是删除会员信息的界面,删除和修改操作所要执行的流程是类似的,都需要根据编号先找到会员的信息并显示在页面上,所以这里有关删除的具体运行图就不再赘述。
图4-8删除会员信息界面图
图4-9查询编号界面图
从上图可以看出,编号可以使用者从键盘打数字或者是从下拉框中选择对应的数字。
查询会员信息分为三种类型的查询,分别是查询全部,按编号查询和按联系方式查询,运行图分别如下:
图4-10查询全部信息图
图4-11按编号查询
图4-12按联系方式查询
4.3会员管理模块
会员管理模块主要实现如下功能:
① 增加会员信息
② 删除会员信息
③ 修改会员信息
④ 查询全部会员信息
⑤ 按编号查询会员信息
⑥ 按联系方式查询会员信息
商品信息管理如果和会员信息管理类似的操作这里就不再做过多的说明了
下面我分别将商品信息管理的一些核心操作界面显示如下:
图4-13添加商品信息的界面
商品信心的查询方式分为四类:
查询全部商品
按商品编号查询商品信息
按商品名称查询商品
按商品类别查询商品
图片分别如下所示:
图4-14按商品编号查询商品信息
图4-15按商品名称查询商品
图4-16按商品类别查询商品
5 系统测试
完成对流程的编码后最重要的事情就是对系统的测试工作了,测试在系统设计阶段有两个时期,通常在编写每个模块后做单元测试,另一个时期是对系统的综合测试。
5.1 测试的意义
软件工程就是尽最大努力利用人力等资源,高质量地完成软件开发项目。因此,软件测试在面向对象编程里更具有它的重要性。新的产品发布前一定要进行测试,为的是保证系统的质量,在投入使用前找到未发现的bug,避免投入市场发布之后出现问题带来更加严重的后果,因此,测试是必须要进行的非常重要的一个步骤,对保证软件的安全性、可靠性和稳定性具有重要的意义。
5.2 模块测试
在模块测试时我们主要从以下几个方面考虑:
1. 模块接口;
2. 局部数据结构;
3. 重要执行通道;
4. 出错处理通道;
5. 影响上述方面的边界条件。
测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。
5.3 整体测试
总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,逐渐把所有模块结合了。
在测试过程中使用到调试技术:
1. 采用debug调试语句,跟踪数据;
2. 嵌入打印语句,输出中间结果;
3. 利用Visual Studio 2003中调试工具,从调试窗口观测变量的变化;
4. 设置断点,观察程序在断点附近的状况。
评估运行的可靠性问题:
1. 结果正确;
2. 运行速度;
3. 空间利用率;
4. 算法的可行性。
5.4 本章小结
本章主要对系统环境、系统功能和界面进行测试。测试的目的就是要发现问题,然后解决问题,通过反复的测试考虑,解决软件在开发过程中遇到的问题,降低维护的费用。
6 实训小结
本章主要是对系统开发过程的总结,通过自身的分析,进行自我总结,是一个自我收获和不断学习的过程,自我分析是重要的学习方式,认识到自己的不足,努力完善自身。总结语和展望都是系统开发之后的说明,从中学会自我提高和进步,良好的总结习惯,能提高自身的学习经验,并对以后的软件开发也有十分重要的作用。
6.1 总结
本超市信息管理系统是一个超市商品管理及会员管理工作的核心,它的内容对于超市的决策者和管理者来说都至关重要,所以超市销售管理系统应该能够为超市工作者提供充足的信息和快捷的查询手段。但长期以来超市业务一直使用着最简单的人工管理。超市经营物品的采购、库存、销售及核算的手工信息管理使得工作量巨大、服务质量差、工作效率低。同时对市场的反馈的信息不能及时的处理,从而导致销售与市场脱节。最终的结果只能使超市在经营中立于不利的地位。在此基础上,我们开发了这套系统。目的就是为了解决超市管理的紊乱,使得在超市日常经营及销售中,能够有迹可寻,随时跟踪市场,而且减少了不必要的劳力资本,使得经营者能够实现用最小的成本,获得最大的利润。 -kij9_Vpx 因此设计和开发超市销售管理系统,具有十分重要的社会意义和现实意义。
通过对这个课题的研究,我发现一个好的系统会给一个公司,一个企业带来翻天覆地的变化。我国将计算机应用于经济管理方面起步较晚,但随着市场机制的日益健全,销售管理工作在超市中的地位越来越重要,一些管理人员开始在销售管理领域进行管理信息系统的开发工作。现阶段,我国大型超市也有了比较完善的销售管理体系。同时在经营方面更能了解顾客的需求,特别是在传统商品方面的需求,因而能够赢得先机。但在物流配送体系方面有待改进,目前大都处于萌芽状态,少数建有自己的物流配送中心,大部分仍包给第三方物流企业,在调度和应急处理方面的反应差距较大。而且在经营中的盲目性比较大,片面强调规模扩张,没有做好充分调研,易导致经营失败。因此,应用先进的计算机技术和现代管理理念,借鉴国外先进经验和技术,研究并开发实用的超市销售管理系统,对于优化销售和管理过程、提高快速响应市场变化的能力,增强其竞争力,具有非常重要的现实意义。
本系统主要实现如下目标:系统的界面美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠;实现超市内一些基础信息的设置及各种相关信息的添加、修改,删除和查询;商品的总览、入库、销售等流程清晰;数据计算自动完成,提高工作效率;可通过给定的商品名称、销售时间等对数据库进行快速定位; 系统最大限度地实现了易维护性和易操作性,并且运行稳定、安全可靠。
和传统管理模式相比较,使用本系统,可以提高超市的运作效率,辅助提高超市的决策水平,管理水平,为降低经营成本, 提高效益,减少差错,节省人力,提高顾客满意度,增强超市扩张能力, 提供有效的技术保障。但由于本人能力有限,加上时间仓促,本系统难免会出现一些不足之处,本系统只适合中小型超市使用,不能适合大型超市使用;超市管理系统涉及范围宽,要解决的问题多,功能复杂,实现困难,但由于限于时间,本系统只实现了其中的一部分功能。
6.2 展望
在时间限制下,本超市管理系统的设计还存在着一定的不足,需要在以后的实践过程中不断的完善,以下是对本次项目可以更加优化之处的分析。
界面设计方面还有进一步改善的地方,我会在今后的学习工作中着重加强这方面的锻炼。界面的设计上,相对来说比较保守型,可以加入一些比较新鲜的元素,这样可以吸引用户。界面设计是面向用户的主要部分,包括用户体验也有待进一步的调研。对于系统的安全方面也是需要考虑的重要问题,在数据库设计方面考虑到安全性问题,需要对每一个字段进行仔细分析,对长度的设定尽量更加规范和严格,对外键和关联关系需要仔细考虑。另外在系统的整体功能设计方面,在前期分析下,基本上完成了系统的主要功能,但是还可以对系统进行纵向的扩展。
相信经过以后的不断实践和学习,自身会不断进步,系统也会越来越完善,功能也会更加强大和实用。只有坚持学习和锻炼,巩固所学的知识,才会开发出更加优秀的系统,所以,以后,我也会对自己严格要求,每一次的总结经验,都认真书写,争取取得更大的进步。
6.3 致谢
在这次课程设计的程序实现及文档撰写过程中,我得到了许多人的帮助。首先我要感谢我的老师在课程设计上给予我的指导、提供给我的支持和帮助,这是我能顺利完成这次报告的主要原因,更重要的是老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力。其次,我要感谢帮助过我的同学,他们也为我解决了不少我不太明白的技术上的难题。同时也感谢学院为我提供良好的做毕业设计的环境。最后再一次感谢所有在设计中帮助过我的良师益友和同学。
附 录
//登录的核心代码
private void initFrame(){
// 顶部
JPanel titlePanel = new JPanel();
titlePanel.setLayout(new FlowLayout());
titlePanel.add(new JLabel("登录界面"));
c.add(titlePanel, "North");
// 中部表单
JPanel fieldPanel = new JPanel();
fieldPanel.setLayout(null);
//JLabel jLabel1 = new JLabel("角色:");
//jLabel1.setBounds(100, 20, 50, 20);
//String[] allType ={"管理员","员工"};
JLabel a1 = new JLabel("用户名:");
a1.setBounds(100, 20, 50, 20);
JLabel a2 = new JLabel("密 码:");
a2.setBounds(100, 90, 50, 20);
//fieldPanel.add(jLabel1);
fieldPanel.add(a1);
fieldPanel.add(a2);
Username.setBounds(160, 20, 120, 20);
Password.setBounds(160, 90, 120, 20);
fieldPanel.add(Username);
fieldPanel.add(Password);
c.add(fieldPanel, "Center");
// 底部按钮
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new FlowLayout());
buttonPanel.add(ok);
buttonPanel.add(cancel);
c.add(buttonPanel, "South");
/*Username.addActionListener(this);
Password.addActionListener(this);
public void actionPerformed(ActionEvent e){
username = Username.getText();
password =new String(Password.getPassword());
RegisterBean R= new RegisterBean();
R.add(username,password);
}*/
ok.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//System.out.println(username.getText().toString());
//System.out.println(jComboBox1.getSelectedItem().toString());
LoginBean hb=new LoginBean();
String user=Username.getText().toString();
String pass=Password.getText().toString();
//
String password=hb.add(user);
System.out.println(password);
System.out.println("*");
System.out.println(pass);
if(Username.getText().length() == 0){
//MessageBox.Show("请输入用户名!");
System.out.println("1");
JOptionPane.showMessageDialog(null, "username can't be empty!","ERROR",JOptionPane.ERROR_MESSAGE);
}
/*else if(password==null)
{
JOptionPane.showMessageDialog(null, "username not exists!","ERROR",JOptionPane.ERROR_MESSAGE);
}*/
else if(Password.getText().length()==0)
{
JOptionPane.showMessageDialog(null, "password can't be empty!","ERROR",JOptionPane.ERROR_MESSAGE);
}
/*else if(!password.equals(pass))
{
JOptionPane.showMessageDialog(null, "password is not right!","ERROR",JOptionPane.ERROR_MESSAGE);
}*/
else{
new HrMS();
}
}
});
cancel.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
///frame.setVisible(false);
System.exit(0);
}
});
}
//系统主界面的代码
public void actionPerformed(ActionEvent e) {
Object obj = e.getSource();
if (obj == itemExit) { //退出
System.exit(0);
}
else if (obj == itemAddAssets) { //增加信息
AddPerson add = new AddPerson();
add.downInit();
add.pack();
add.setVisible(true);
}
else if (obj == itemModifyAssets) { //修改信息
ModifyPerson modify = new ModifyPerson();
modify.downInit();
modify.pack();
modify.setVisible(true);
}
else if (obj == itemDeleteAssets) { //删除信息
DeletePerson delete = new DeletePerson();
delete.downInit();
delete.pack();
delete.setVisible(true);
}
else if (obj == itemSelectAssetsAll) { //查询所有信息
ResultInfo result = new ResultInfo();
result.resultPersonAll();
}
else if (obj == itemSelectAssetsID) { //以编号查询信息
SearchIDInfo info = new SearchIDInfo("Person");
info.pack();
info.setVisible(true);
}
else if (obj == itemSelectNumberAssetsID) { //以联系方式查询信息
SearchNumberInfo info = new SearchNumberInfo("Person");
info.pack();
info.setVisible(true);
}
else if (obj == itemAddPerson) { //增加商品信息
AddGoods add = new AddGoods();
add.downInit();
add.pack();
add.setVisible(true);
}
else if (obj == itemModifyPerson) { //修改商品信息
ModifyGoods modify = new ModifyGoods();
modify.downInit();
modify.pack();
modify.setVisible(true);
}
else if (obj == itemDeletePerson) { //删除商品信息
DeleteGoods delete= new DeleteGoods();
delete.downInit();
delete.pack();
delete.setVisible(true);
}
else if (obj == itemSelectPersonAll) { //查询所有商品信息
ResultGoodsInfo result = new ResultGoodsInfo();
result.resultGoodsAll();
}
else if (obj == itemSelectPersonID) { //以编号查询商品信息
SearchGoodsIDInfo info = new SearchGoodsIDInfo("Goods");
info.pack();
info.setVisible(true);
}
else if (obj == itemSelectPersonName) { //以名称查询商品信息
SearchGoodsNameInfo info = new SearchGoodsNameInfo("Goods");
info.pack();
info.setVisible(true);
}
else if (obj == itemSelectPersonSort) { //以名称查询商品信息
SearchGoodsSortInfo info = new SearchGoodsSortInfo("Goods");
info.pack();
info.setVisible(true);
}
else if (obj == itemBack) { //显示超市信息
ShowMessage back = new ShowMessage();
}
else if (obj == itemSelectBack) { //显示超市历史
ShowHistory back = new ShowHistory();
}
}
基于java的超市管理系统设计(含源文件)相关推荐
- java输入输出图书管理系统设计_基于JAVA的图书管理系统设计(含源文件).doc
PAGE 本科毕业设计(论文) 题 目:基于Java的图书管理信息系统的设计和实现 院 系: 计 算 机 科 学 系 专 业: 计 算 机 科 学 与 技 术 姓 名: 陈 平 指导教师: 周 亚 凤 ...
- 基于java的论坛管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 摘 要:当今社会正处在网络时代,信息化大潮席卷全球,网络正以前所未有的速度在我国普及开来.论坛以 ...
- 基于java的土地档案管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 摘 要 研究土地档案管理关系即为实现一个土地档案管理系统.土地档案管理系统是将现有的历 ...
- 基于java的社团管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 摘要 随着科学技术的不断发展,人们所需管理的信息逐渐变多,使快速并准确地在信息库里搜索出 ...
- 基于java的教学管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 目录 第1章 绪 论 1 1.1 课题背景 1 1.2 国内外现状 1 1 ...
- 基于java银行ATM管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 题 目: 银行ATM管理系统 一. 设计目的 银行ATM管理是银行业务流程中十分重要 ...
- 基于java的在线考试系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 摘 要 本系统是一个基于java的在线考试系统.它的用户由学生.教师和系统管理员组成.学生登陆系 ...
- 基于java的银行ATM系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 目 录 1 系统分析 1 1.1 设计背景 1 1.2 需求分析 1 1.2. ...
- 基于SSM的员工管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 首先,页面的UI是使用了Bootstrap框架快速搭建的,这个框架还是比较好用的,不但快速,而且 ...
- 基于JAVA干洗店订单管理系统设计与实现计算机毕业设计源码+数据库+lw文档+系统+部署
基于JAVA干洗店订单管理系统设计与实现计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA干洗店订单管理系统设计与实现计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目 ...
最新文章
- RandomForest随机森林总结
- 自定义View 中很关键的问题View获取宽/高是0 的解决办法
- springboot教程(一)
- 教你用Python制作一款自己的杀毒程序
- Redis(数据类型及操作指令、Java连接Redis)
- 使用临时表关联数据时效率低的问题
- 使用ZooKeeper ACL特性进行znode控制
- Injection with CDI (Part I)
- 一个伤心人的帖和一群搞笑人的跟帖
- String常用函数
- [Struts]使用tiles管理界面遇到困难
- debug error/runtime error的原因之一
- SQL笔记之开天辟地
- DICOM worklist工作原理?
- 第1章 信息化和信息系统
- PS利用色彩范围抠图
- 快读快写模板【附O2优化】
- Fliqlo时钟屏保Windows版本
- 【两次过】【2017腾讯】字符移位
- 渗透测试人员常用的8种火狐插件