基于MVC模式的网上超市系统_java课程设计(27页).docx
《基于MVC模式的网上超市系统_java课程设计(27页).docx》由会员分享,可在线阅读,更多相关《基于MVC模式的网上超市系统_java课程设计(27页).docx(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于MVC模式的网上超市系统_java课程设计-第 22 页软件综合课程设计报告题目名称: 基于MVC模式的网上超市系统 班 级: 组长学号: 组长姓名: 成 绩: 指导老师: 2013 年 11月 02日目录1.开发背景11.1 开发的必要性11.2 市场现状分析11.3 设计思想11.4 开发工具选择12.系统分析22.1 需求分析22.2 可行性分析32.2.1对项目技术支持的分析32.2.2对项目经济可行性的分析32.2.3 社会因素的分析32.2.4 结论33.系统概要设计33.1系统功能设计33.2系统目标43.3系统的功能结构54.系统详细设计54.1构建开发环境54.2项目实
2、体E-R图54.3数据库分析与设计74.4客户端模块设计94.4.1顾客购买商品的时序图94.4.2顾客购买商品的活动图94.4.3客户端的完整设计104.5服务器端模块设计114.5.1管理员管理商品的时序图:114.5.2管理员管理商品的活动图114.5.3管理员管理订单的时序图124.5.4管理员管理订单的活动图134.5.5服务器端的完整设计135.系统实现145.1系统目录结构145.2数据源的配置156代码编写及部分代码分析166.1客户主页开发166.2客户登录功能开发166.2.1开发Servlet166.2.2配置web.xml196.2.3数据库方法196.3“我的订单”功
3、能开发206.4客户注销功能开发216.5 注册事件响应的开发216.6密码重置功能开发226.7 客户端信息显示功能开发236.7.1 分页显示页面开发236.7.2 分页功能开发236.8 商品查询功能开发246.9 商品分类显示开发256.10 商品详细信息显示开发256.11 购买商品功能开发266.12 关于系统其他功能的说明287.系统测试及部分页面截图287.1 前台功能测试287.2 后台管理功能测试308.结束语349.致谢3410.参考文献351.开发背景1.1 开发的必要性“需求决定市场”,这是一个亘古未变的法则。当下网络发展迅猛,人们对网络的信任度和依赖度均有很大的提高
4、,这一现象被有商业头脑的人发现,从而开发出网上购物这种新型购物方式,极大改变了传统的消费方式。同传统的购物方式相比,网上购物有很多优点。1. 方便性:顾客足不出户就能购买到自己心仪的商品。2. 节约时间:这一点尤其为上班一族提供了方便,因为这些人整天待在办公室,无暇购物。3. 随意性:只要有网络的地方就可以购物,而且可以在本地,浏览千里之外的商店的商品,从而扩大了购物空间和随意性。上述优点足以使网络购物系统大红大紫,因此商家开发一个网上购物超市系统是很有必要的。本次课程设计旨在设计并实现一个基于实体超市的网上超市系统,使实体超市的业务范围可以得到极大扩展,从而提高商家的经营效益。1.2 市场现
5、状分析在电子商务已经如火如荼的大背景下,市场上已经有相当多的电子商务平台为广大实体店铺提供后台管理等服务,但是考虑到很多中型或大型超市本身业务规模较大,如果与电子商务平台进行合作则可能会有比较大的支出。而且由于这些已存在的电子商务平台已经形成了比较固定的经营模式,很有可能无法完全适应很多超市本身业务扩展的需要,所以,为有志于扩展经营范围的中型或大型超市量身定做一套网上超市系统就显得尤为重要。1.3 设计思想考虑到系统应能适应不同商家的需求,故需要保证系统模块之间的低耦合性;同时为了开发的便利与日后维护的方便,考虑使用MVC模式设计,使业务处理逻辑与页面分离,加快开发进度。综上所述,本系统应实现
6、以下优势:(1)项目不同模块之间具有低偶合性。(2)业务功能扩展方便且便于维护。1.4 开发工具选择本项目开发工具选用MyEclipse,采用JSP技术、MVC框架和MySQL数据库。MVC框架介绍:MVC全名是Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用
7、户界面的结构中。MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型视图控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk80发明的一种软件设计模式,已被广泛使用。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好
8、处,但也有一些缺点.MVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的MVC就是JSP + Servlet +JavaBean的模式。2.系统分析2.1 需求分析本系统主要是供网上购物的用户使用,同时后台也必须有管理人员对其进行管理,以保证系统正常运行。客户端应能够对顾客购买商品的需求做出友好的相应,据此分析客户端应具有如下功能:购物车功能,对顾客要购买的商品进行管理。我的订单功能,包括对用户的订单进行管理。用户注册功能,主要让初次登陆的用户进行注册。密码重置功能,已注册的用户对自己的密码
9、进行修改。注销功能,已登录的用户在离开本购物超市时进行注销。理端应能够对系统中的商品信息及订单信息进行监督及操作,即管理端应具有如下所示功能:管理员管理功能,操作者包括超级管理员和普通管理员,超级管理员可对任意管理员的信息进行管理,而普通管理员只有部分权限。(注:考虑到日后系统扩展的需要及系统本身的安全性,必须做到账号的专人专用,以明晰权责分配,防止不必要的意外事故及纠纷的发生。原则上超级管理员在添加管理员时只添加普通管理员,以防止管理员之间的恶意或无意增删,威胁系统安全)。商品管理,对商品进行增、删、改、查。订单管理,对客户的订单进行管理。注销,让离开后台管理系统的管理员进行注销。2.2 可
10、行性分析2.2.1对项目技术支持的分析该系统采用JSP+Servlet+JavaBean+Tomcat+MySQL完成,鉴于作者此前已有这些方面的项目经验,所以有信心及时保质保量的完成此项目的开发。2.2.2对项目经济可行性的分析本项目旨在提供一个完整网上超市的简单框架,预计一到二周完成。本项目能够使学到的知识得到检验,对于知识的汇总总结有一定益处,值得开发。同时本系统虽是一个网上超市的简单框架,有诸多尚待完善的功能,但仍具有一定的商业价值,日后可在稍加改进后应用于真正的商业项目中。2.2.3 社会因素的分析该系统完全由本人独立开发,其开发模式是本人的自主知识财产,在法律方面没有任何侵权行为,
11、完全符合合同法的规定。2.2.4 结论根据具体及详细的分析,本人认为该系统的经济可行性、技术可行性及营运可行性都比较高,故决定开发此系统。3.系统概要设计3.1系统功能设计若要实现一个完整的网上超市系统,则必须具备完善的前台交易平台和功能强大的后台管理系统,现在对两项功能分别进行分析。游客登入网上超市后可以浏览商品,若要购买商品则必须先注册成为会员并以会员身份登录系统,购买商品后到购物车中查看并核对商品信息,若确认无误就可以进行支付。在支付前会员需要填写收货地址,联系方式等信息以确保运送过程万无一失。顾客支付完成后生成订单信息,此信息传回到后台Servlet,由后台Servlet进行处理,在处
12、理过程中涉及数据库连接的操作则交由JavaBean处理。Servlet将处理后的信息通过JavaBean写入数据库,并将处理结果传回前台界面,向会员显示交易信息。至此,一次交易过程即已完成。基于上述分析,顾客购买商品的用例图应如下图所示:图3-1 顾客购买商品的用例图前面已经提到,考虑到以后系统扩展的需要及出于对系统本身安全性的考虑,本系统需严格按照账号密码专人专用的原则,以避免出现系统在遭到无意或恶意破坏时无法追究责任人的现象。同时,为防止以上误操作的发生,特别设立超级管理员,只有超级管理员才有权限对普通管理员进行增删等操作。这样就实现了在日后业务扩展时既能及时方便的增加管理员又能防止同级管
13、理员之间可能存在的恶意增删现象,以维护系统稳定。基于上述考虑,原则上超级管理员只增加普通管理员即可,尽量保证超级管理员的唯一性。同时管理员都具有商品管理及订单管理功能。在商品管理中,管理员可以将新上架的商品及时更新到系统中,也可以将已经下架或库存不足的商品从系统中删除,为方便以后业务扩展需要,需实现商品搜索功能以加快商品查询速度。在订单管理中,管理员可查看订单详细信息,同时可发送未发送的订单,查看已经发送,交易完成的订单。基于上述分析,管理员后台管理的用例图如下所示:图3-2 管理员后台管理的用例图3.2系统目标根据对项目的分析最终确定系统要实现的要求如下:实现系统分析阶段所设计的功能。实现系
14、统界面的友好性,让用户有种宾至如归的感觉,从而提高浏览量及交易量,提高网络运营商的效益。3.3系统的功能结构根据上述所描述的系统分析及设计,最终确定该系统的功能结构如图所示。图3-3 系统功能结构图4.系统详细设计4.1构建开发环境开发此系统所需要用到的软件环境如下。JDK1.6及其以上版本:相比1.6之前的JDK版本而言,JDK1.6有相对完善的功能,能够加快开发进度。Web应用服务器:Tomcat 6.0及其以上版本。虽然是一款绿色软件,但其功能比较强大,方便易用,极适合中小型系统应用。可从网上免费下载,从而可以降低开发成本。数据库:MySQL5.5及其以上版本。MySQL已经被sun公司
15、收购,会有比较好的发展。虽然其本身存在诸多不足,但作为一个简易项目的数据库完全可以胜任。开发环境:MyEclipse。本系统使用了目前较新的MyEclipse 10版本进行开发,由于MyEclipse提供了比较强大的插件工具包,所以极大的缩短了开发进程。4.2项目实体E-R图商品的E-R图,:图4-1 商品的E-R图管理员E-R图:图4-2 管理员的E-R图订单明细的E-R图:图4-3 订单明细的E-R图顾客的E-R图:图4-4 顾客的E-R图订单的E-R图:图4-5 订单的E-R图4.3数据库分析与设计 此系统由Jsp+Servlet+JavaBean+Tomcat+MySQL组成,因为对数
16、据库的性能要求不是太高,故采用适用于中小型企业的MySQL数据库较为合适。而且该数据库免费,操作简单,可以节约开发成本和开发时间。本系统中的信息表主要有5张表:商品资料表、顾客资料表、管理员资料表、订单表、订单明细表,下面分别对各表进行介绍。(1) 商品资料表:用于记录库存商品的基本信息,其主要字段有:商品ID、商品名称、商品类别、商品价格、商品简介、上架日期、商品数量、图片URL等,具体设计如表4-1所示。表4-1 商品资料表字段名称数据类型字段大小是否主键是否为空说明goodsidIntN/A是否商品IDgoodsnamevarchar50否否商品名称gtypevarchar50否否商品类
17、别gpricedoubleN/A否否商品价格gdatedateN/A否否上架日期gamountintN/A否否商品数量gimgurlVarchar100否否图片URLgintroductiontextN/A否否商品简介(2) 顾客资料表:用于记录顾客的信息,主要由顾客名称、顾客密码、顾客E-mail组成,如表4-2所示。表4-2 顾客资料表字段名称数据类型字段大小是否主键是否为空说明cnamevarchar50是否顾客名称cpwvarchar50否否顾客密码cemailvarchar50否是顾客E-mail(3) 管理员资料表:用于记录管理员的信息,主要由管理员名称、管理员密码、管理员权限组成
18、,如表所示。表4-3 管理员资料表字段名称数据类型字段大小是否主键是否为空说明mnamevarchar50是否管理员名称mpwvarchar50否否管理员密码mpermittedvarchar50否否管理员权限(4) 订单资料表:用于记录顾客订单的一些基本信息,包括订单ID、顾客名称、收货人名称、收货人地址、收货人电话、订单状态、订货时间等,如表所示。表4-4 订单资料表字段名称数据类型字段大小是否主键是否为空说明oidintN/A是否订单IDcnamevarchar50否否顾客名称receivenamevarchar50否否收货人receiveaddsvarchar50否否收货人地址rece
19、ivetelvarchar50否否收货人电话allmoneydoubleN/A否否总价zhuangtaivarchar100否否状态buytimedatetimeN/A否否购买时间(5) 订单明细表:该表用于记录订单的详细信息,主要包括订单ID、商品名、商品ID、商品价格、订货数量、订货时间等,具体设计如表所示。表4-5 订单明细表字段名称数据类型字段大小是否主键是否为空说明oidintN/A否否订单IDgoodsidintN/A否否商品IDgoodsnamevarchar50否否商品名称gpricedoubleN/A否否级别orderamountintN/A否否订货数量buytimedate
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MVC 模式 网上超市 系统 _java 课程设计 27
限制150内