收藏 分销(赏)

基于JSP小型超市管理系统.doc

上传人:二*** 文档编号:4517372 上传时间:2024-09-26 格式:DOC 页数:218 大小:15MB
下载 相关 举报
基于JSP小型超市管理系统.doc_第1页
第1页 / 共218页
亲,该文档总共218页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、基于JSP小型超市管理系统(完整资料)(可以直接使用,可编辑 优秀版资料,欢迎下载)课程设计报告课程名称 基于2EE的项目开发 设计题目 超市管理系统专业班级 软件13 姓 名刘香弟 学 号1243111成 绩 评 定考核内容设计表现设计报告答辩综合评定成绩成绩计算机技术与工程学院和谐 勤奋 求是 创新目录1题目选择与系统分析311项目的功能分析3.1。顾客功能性需求311。管理员功能性需求42 模块设计2。系统总体设计52.模块设计52.。登录模块72.2。商品信息查看模块23购物车模块83数据库的数据表设计与映射93。1数据库表设计4 系统详细设计与实现11.1综合描述14.系统运行界面描

2、述124.3主要的Java类和其功能25。4系统测试27。测试的目标与方法74.4.测试用例271题目选择与系统分析1。1项目的功能分析功能性需求是整个需求分析章节最为重要的部分.它直接决定了系统的模块划分,业务逻辑,明确了使用者对小型超市信息管理系统功能的要求。一个完善的,明确的,详细的功能性需求分析是开发一个系统的关键。成功的功能性需求分析可以避免后期对系统的大范围改动甚至是推倒重建,因此,本部分极为重要。1.1.顾客功能性需求不用输入用户名,密码,直接登录超市管理系统的商品页面;查看商品的基本信息,包括 商品编号,单价,余量,厂家,生产日期,保质期;在购物车中查看自己选中的商品名称,价格

3、,数量,并可以从购物车中移除某些商品,查看总价,并可以选择结账或选择继续购物;4点击结账后显示结账成功并退出系统。相关用例图见图11。图1 顾客用例图顾客用例 “查看商品基本信息的用例描述见表1-1。其他用例类似于此,不再一一赘述。表11用例描述-查看商品基本信息使用者顾客用例查看商品基本信息参与者顾客,小型超市信息管理系统数据顾客向超市信息管理系统发送商品相关信息,如商品名,商品类型,商品编号等激励超市信息管理系统根据用户发送的字段,查询后台数据库响应超市信息管理系统返回查询商品结果备注无11.管理员功能性需求1打开网站后,进入登录页面。输入用户名,密码登录系统.2登陆后,选择进入系统人员管

4、理页面或者商品信息管理页面。在系统人员管理页面中,查看其它管理员的信息,并可以添加新的管理员。在商品信息管理页面,可以查看全部商品的信息,包括商品编号,进价,单价,余量,厂家,生产日期,保质期。3进入商品信息管理页面的进货管理页面,可以填写进货单,实现相关产品数量的增加。4进入商品信息管理页面的销售查看页面,可以查看近期各项商品的销售情况。5点击页面右上角的退出按钮,直接退出系统并跳转到登录页面。相关用例图见图1-2 管理员功能性需求用例图。图12 管理员功能性需求用例2模块设计。1系统总体设计系统总体设计图如图41所示。当使用人员登录系统后,按身份的不同进入各自的页面,并使用系统提供的功能.

5、管理员的人员信息管理属于操作者所有,在此本系统默认管理员可以操作其他管理员的信息。图21 系统总体设计图2.2模块设计本处将对小型超市信息管理系统进行分模块设计,明确各个模块的操作流程,功能如何使用等问题。登录模块超市信息管理系统的使用者主要有两种:普通的顾客和管理员。按照日常生活中超市的运作流程,普通顾客不需要为其设立专门的数据表,所以只需要实现管理员的登录模块.使用者进入系统后,首先进入欢迎界面.普通顾客点击“开始购物旅程”超链接,直接进入购物界面。管理员点击“进入后台系统”超链接,进入管理员登陆界面。由于管理员对系统有操作,查看等权限,因此不允许在登陆页面注册新的管理员。登陆成功后跳转至

6、管理员管理页面,否则显示“Loin fil”登陆失败.当输入正确的姓名,密码后,界面自动跳转到管理员管理欢迎界面。2商品信息管理模块管理员进入后台管理界面后,点击“商品信息管理页面超链接,进入商品信息管理页面.页面查询后台数据库数据,将所有商品信息展示在右侧页面上。若管理员需要对相关商品信息作出修改,或者删除某项商品信息。则点击相应的超链接进行操作。删除成功后系统会提示“删除成功”。点击“更新,系统会进入商品信息更新页面。在页面中,已经预先填好了所选商品信息。这允许管理员仅对需要修改的字段内容修改,避免了全盘输入的麻烦.若管理员需要添加新商品,则点击“添加新商品”链接。系统跳转到 商品信息添加

7、页面。在此页面填入相应的商品信息,点击“添加”按钮。若各个字段的值都符合要求,则系统提示“添加成功。再点击左侧“商品信息管理页面”,则可以看到刚才插入的商品信息。进货单管理模块进货是超市正常运营,及时跟进市场最新动态,调整售货方向的最重要的手段.进货单管理模块用来实现进货功能,管理员可以填写进货单实现对商品表及进货单表的更新。在 管理员管理欢迎界面点击“进货单管理页面”,系统跳转到进货单管理页面。由于进货操作是管理员对超市经营情况收集信息的重要途径,因此不允许对进货单进行修改操作,以便进行对账,合计等操作。点击“增加进货单”链接,系统跳转至进货信息添加页面。在进货信息添加页面中,当管理员填写好

8、相应的字段后,点击“添加”按钮。系统在后台会自动查找填入的商品名.如果以前存在同名的商品,则在原来的商品的基础上,对数量作出修改.如果查不到填入的商品名,则在商品表中新建一条记录。最后,在进货单表中生成相应的进货记录.管理员信息管理模块在管理员管理欢迎界面,点击“管理员信息管理页面”。系统跳转至管理员信息管理界面。在此界面上,可以实现对管理员信息的增删改,在此不再一一赘述。5交易信息查看模块顾客每次在超市的消费都会有相应的记录。由于小型超市规模的限制,不可能大量保存每笔交易的详细信息,因此系统以交易流水号的形式表示每笔交易.此模块就是供管理员查看交易信息的记录。由于交易信息是对超市中已存在的交

9、易行为的记录,因此不允许管理员对交易信息进行修改,只能在记录较多时删除某条记录.6退出模块管理员在左侧菜单点击“退出”链接,进入“确认退出页面”.7购物模块在开始页面点击“开始购物旅程”链接,跳转到购物页面。点击一项商品后的添加至购物车链接,会提示添加成功,并选择查看购物车或继续购物。点击“查看购物车”进入购物车管理页面.可以实现对购物车中商品数量的修改,查看目前已购买商品的价格总计,或者选择删除购物车中的某项商品,甚至清空购物车。点击“结账”链接,系统在新页面中会生成一个交易流水号,继续点击“结账,如果后台保存成功,则提示交易完成,点击链接离开。.。1登录模块登录流程如图2-3。管理员在登录

10、表单填写用户名,密码,将表单与Flag标志提交至Sle。系统根据XML文件的配置,调用相关的Srlet类(Membeontoler.va)。rlt根据Fag的值,调用相应的函数,查询数据库表(meer)并进行判断,如果用户名与密码匹配,则跳转到管理页面(na。jsp),否则,输出登录失败页面。图2-登录模块流程图。2商品信息查看模块在Left。jsp 中点击“商品信息管理页面”,链接为”Goods。do?fla=1”.系统根据XM配置文件,调用odsContoler。ja 。接受到Flag= ,调用FinAl()方法,查询Myq数据库中gos表,查询所有商品信息,返回一个istGod 集合,名

11、为lst。利用req。seAtribute(god”,list)将集合存入equest范围内,然后跳转至商品信息展示页面(odanage.jsp).在商品信息展示页面,创建一个Tab。列名分别为商品各项属性名。新建一个ListGoods ist.。将rquest范围内的“good”接收并进行强制类型转换。循环list,将商品输出。在每一行商品的后面,加上“删除”“更新”两个链接,分别为:“Godsdo?lag=2&d%istgt()getI()%”,“G.o?lg5i=”.点击链接,可以调用GoodsCntrllerjav中的相应函数,传递参数为ID,进行删除或更新的操作。相关流程见图3。图商

12、品信息查看模块流程图23.3购物车模块添加商品至购物车时,会对购物车中的商品进行校验,若商品已在购物车中,则不在购物车中添加新项目,而是只修改商品数量。顾客可以在购物车中编辑商品信息,包括修改商品数量,删除某些不想要的商品,或者清空购物车.每点击相关链接就调用sevlet的对应函数对sssio中的ShpngCat进行操作。如果点击“结账”,则进入生成流水号页面。结账成功后,则对数据库中的商品余量进行修改,自动减去顾客购买的商品数量。购物车流程图如图5-11所示。图511 购物车模块流程图3数据库的数据表设计与映射3。数据库表设计商品基本信息表见表3-1。表 商品基本信息表名称含义类型约束备注G

13、odsID商品DInt 2主键自动增长GodNae商品名称Varchar 10唯一值Goodp商品类型nt 0不为空GoodsPre单价t 10不为空odPurchsPrce进价Int 10不为空GoosAmunt商品数量In 1不为空GodGtTim进货日期Dat不为空GodMaintainime保质期nt 10不为空单位为(天)Godsctory生产厂家Vrcar 50不为空员工信息表见表 32。表32 员工信息表名称含义类型约束备注embrI员工IDInt20主键自动增长emrNam员工姓名Varcr 10不为空Membessrd员工密码Vrchar 6不为空mbSex员工性别Int 1

14、不为空1:男2:女MmerAge员工年龄Int 0可为空进货单表见表3-3.表3-3 进货单表名称含义类型约束备注Int_ID进货单IDIt 5主键自动增长p_GodsID商品IDInt0不为空Input_GoodsNae商品名称Vacha 10唯一值Inpu_GoodType商品类型t 20不为空Int_Goodri单价Int1不为空Input_GoodsPurchaserce进价Int10不为空Ipt_Goodsmunt商品数量nt 10不为空InputGoodsGetTime进货日期Dte不为空Ipu_odMaiinTime保质期Int 0不为空单位为(天)Iput_GoodsFator

15、y生产厂家Varhr 不为空订单表见表34。表34 订单表名称含义类型约束备注Account_ID订单DInt20主键自动增长Acont_GodsID商品IDIn 2不为空Accout_Cod交易流水号archa5外键 参照le表coe不为空AcuntGooont购买商品数量In 1不为空交易单表见表3-5.表35 交易单表名称含义类型约束备注Sale_ID交易单Darhar 2主键自动增长Sle_ate交易日期ate不为空alAccoutcod交易流水号Vrchar0不为空4 系统详细设计与实现4.1综合描述由于小型超市信息管理系统结构比较简单,相对大型的,成熟的超市采用的管理系统来说,无论

16、在系统的性能,结构复杂度,安全性上面都无法与之相比。因此在进行系统设计时,应尽量做到结构清晰,编码方式合理,代码与系统的可维护性较高。在本章节中,选取小型超市信息管理系统关键模块进行设计阐述。主要模块有登录模块,商品信息查看模块,购物车模块三部分。有关本系统的文件结构如下:4。系统运行界面描述此处为小型超市信息管理系统关键模块的详细描述,并附上相关代码以及截图。在代码的关键处加以说明,以方便读者阅读。相关代码如下:Login。jsp:%pageanguae=javaiportjaa。util。*agnoding=”UTF-8%tgiburi=http:/vasun。com/jsp/stl/cr

17、e”prefx=”c%Stri path = reqstgetCnxPath();Stri bePah requstgtScheme() + :/”+ rquest。gtServrNme() + ”:+ equetgeterPot()+ pah ”;%!CTYPETMLPULC/W3C/DT HTL .01Tansiional/EN”htmlhtleMyJSP login.sp rt pagemethttequpragantent=”nocheetahtpequicacheconrol”content=chmetahttp-euv=”expires”conten=0metaheq”kyword

18、scontentkword1,keyword2,keywr3mttpqv=”escrtionntent=Tis is mypg”cripttp=”texjvscrpt!-将表单中的数据清空-fnctionclearnfo(onPat)dcuentelementById(nePart)。inerHML=”;/hedylass=blutye”dvi=loginformmhoposttion=DologinSvletdldt用户名:/dtd密 码:/t/dlnputtpsbit”am=smit”ae=”登录系统”cas=ipu-bttn/inputtperenae=”setal=重 填cass=in

19、t-buttonocickclrnfo(iMg)/form:iftet=”$flag=faedivtle”agi-lft: 450p; mrgitop:6px; or: F00spand”tiMsstyle=”color: F0登录失败!请重新登陆/span说明:登录表单中,将姓名与密码字段 “nae”属性分别设置为“userName”,“useassword”,向后台进行参数传递。点击subit按钮,按照actio中的路径调用方法,传递方法的类型为“pt”,将提交至eet的dopot方法.pulic itefce UserSevice /判断用户登录是否成功pubi erifLogn(Sti

20、ng nme, trinpassod);/ 根据用户名查询用户表中的数据pbc LstUsefidUserInfoByNme(Sringusrame);/ 获取数据库中用户表中的数据并封装在集合中publc LisUeretAllUeInfo();/ 向用户管理中添加用户信息publc oolean ad(Use s);/根据用户编号修改用户管理页面中的用户信息ulintupdaUseInf(User ser, nt urI);/ 根据用户名编号查询用户表中的数据publi Ue findUrIfoBy(int serId);/ 根据用户编号删除用户管理页面中相应的用户信息ubicit del

21、eteUerInfyId(it userId);/ 分页获取用户信息public ageSize getUeInfoBye(intcurrage);/ 修改用户密码public it updatUsePwInfo(int uerd, rgurNew);说明:ogin方法,接受前台页面传递过来的用户名与密码,并利用编码转换类将用户名转换为UTF编码类型,解决了乱码问题.实例化一个Mebrao类,调用其ogin方法,返回实体类Mebr。如果返回值为空,则输出登录失败页面。否则,跳转至管理员管理页面magejsp.bicntrace UerDao/ 判断用户登录是否成功public UsiLogn(

22、Srg nam, Strin passwd);/ 根据用户名查询用户表中的数据pblc ListfinUerIfoyNae(ting usme);/ 获取数据库中用户表中的数据并封装在集合中pListUsegetAlUerIno(); 向用户管理中添加用户信息publicboolan ad(Userer);/ 根据用户编号修改用户管理页面中的用户信息pubicint upteUserInf(Userur,intuserId);/ 根据用户名编号查询用户表中的数据puic User fdUsInfoId(it serI);/ 根据用户编号删除用户管理页面中相应的用户信息ubicint delet

23、eseInfoById(in usId);/分页获取用户信息ublc agSize getUseInByPage(nt crPae);/修改用户密码publintudateUsePdIf(it userId,Strng serNewPwd);说明:Loin方法对数据库进行操作。首先连接至数据库,利用前台传来的用户名,密码字段对数据库进行查询,以结果集形式进行返回.并实例化sr类,将结果集中的数据输出,返回use类型。相关界面设计见图41,图42,图4-。图4-1 超市信息管理系统欢迎界面图42 超市管理员登陆界面相关代码如下:%agelgage=aimort=”aautil。*pgeEncod

24、ing=”UTF8%gibur=”htp:/java.sn。com/jsp/jl/core”fix=”c”%htly JSlgi。sp startg pag/ilemehttp-euv=”pragm”onten=nocacheethttp-equiv=cacenrolcotennocacemetattpeqi=keywordscoet=”kyword1,ywr2,keywodmeattp-equiv=”descipton”cotetThisis ypag”!-lik rel=stylesheet”pe=”text/ss”hre=”stlesc”-scriptype=tet/jvacrt”fuc

25、ioleanf(nPart)documentgetleentyI(onPart)。innHTM;/scitoyclass=luestyle”divid=”lgn”dilass=icon”/dvdivcs=lginofrmmeth=ost”action=”lirvlet”dldt用户名: t密码:/dtinputtye”paswrdnmepassWordlass=”inputtet/ddic=”btonsinputtype”ubtnam=subit”alue=登录系统”lass=putto/divformc:tst=$flag=lse”ditl=”arinet: 45px; marginto:6

26、; clor: F00”spaid=tishsgtle=olor: #F00登录失败!请重新登陆/p说明:FindAl方法调用oa的eectGoods方法,将所有商品信息读出,以集合的形式存入变量“gods”中,在中进行调用。相关页面设计见图。图4-3商品添加页面titeMy JSP BllModify。sp starting pagetlemehttpequiv”ramaconten=no-cachemetahtpequ=”caecontrlcontent=no-ach”meatp-quiv=ewordsnentkwrd1,kywd,keyod3”meattpeuvdscritioconen

27、t=Thi i y p”!li re=tylehet” type=xt/c ref=stls.slktye=txt/css”rel=syeseetref=css/styess/cripty=ext/vsciptftonchekAoun()axtuntdocmnt。gtElmenById(”amoun)。value;i(tAunt.lnth=)docment。gtElentId(ontMsg).innerHTML=”交易数量不能为空!;vareg=/0-9*$/;i(!r。test(txAmont))domentgtEmentById(”mesg”)inerT=非法字符,请输入数字!”;doue

28、n。getElmentById(mny)。value”;!验证商品名称functoncheckCmName()vaComame=documen.geElemetById(comme).vau;f(xtCoName.ength=)docmt.gelmenByI(”cmNmeMsg)。innrHTL=商品名称不能为空!”;areg=/u4e009fa0,/;if(!eg。tes(Comae)dcumet。getElmeyId(comNaes”)。nnerTL=”非法字符,请输入汉字!”;doentgetEementById(”cmNmMg)。vlue=”;fuctnubiYsNo()varlSpa

29、n=ocumentgetEleentsBgNe(pan);fr(vari0;ialSnlegh;i+)if(allSani.irHML。length!=0)returnfale;beak;ertrue;!验证是否确认修改fctioncekRodif()vrifodfy=conim(”确认修改吗?”);f(iModify)let(恭喜您!修改成功!!);document.getElmentByI(myForm”)submi();!-验证是否确认删除-functonheckeDee()variMdnfirm(确认删除吗?);if(ifodify)ocation。hre=DoDleillnfoByI

30、drvet?billd=$bil.illI”;elseetrnalse;图4-4商品信息页面%pageanguge=av”mport=avaut,commd.sarkeetity。PagezepageEcodin=UT-8%giuri=http:/avasu。cmjs/js/cre”pef”trng pat=euest.etContetPah();String basePah = rquesgeScheme() +:/+requet。geServerNae() + : + request。etServePort()+path +”/;%!DOCTPEHTMLBLCW3/TDTL 401 tional/NtmlheadtitleMy JSP din_bil_ls.jsp starting pae/titleetahtpequv”cche-ontrolnet=ocacemettp-eiv”epiresonet=”0”thttpequv=wrd”conten=kewor1,keyword2,keywod3metahttpquiv

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服