版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、码农毕业设计下载网:太原理工大学毕业设计(论文)任务书毕业设计(论文)题目:基于j2ee的蛋糕销售系统的设计与实现毕业设计(论文)要求及原始数据(资料):1综述网上蛋糕销售系统的研究现状;2深入了解网上蛋糕销售系统的相关技术;3熟练掌握网上蛋糕销售系统的应用;4设计并实现网上蛋糕销售系统;5深入分析网上蛋糕销售系统的关键技术与编写语言;6训练检索文献资料和利用文献资料的能力;7训练撰写技术文档与学位论文的能力。毕业设计(论文)主要内容:1综述网上蛋糕销售系统的应用;2了解网上蛋糕销售系统的相关技术;3熟悉网上蛋糕销售系统的开发环境; 4设计基于java的网上蛋
2、糕销售系统的功能;5. 深入分析网上蛋糕销售系统的应用技术和设计流程;6熟练掌握基于java的网上蛋糕销售系统的编写;7设计与实现网上蛋糕销售系统的程序。学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关 材料。 主要参考文献(资料):1黄敏学 . 电子商务 ,高等教育出版社 ,2001年6月第1版2李源彬 . 电子商务概论 ,人民邮电出版社 ,2004年6月第1版3薛华成 . 管理信息系统 ,清华大学出版社 ,2003年12月第4版4萨师煊. 数据库系统概论 ,高等教育出版社 ,2000年2月
3、第3版5张海藩. 软件工程 ,人民邮电出版社 ,2002年3月第1版6张登辉 . asp编程基础及应用 ,机械工业出版社,2003年3月第1版7 李源彬 ,电子商务概论 ,人民邮电出版社 2004年6月第1版8王君学 . 网页制作基础frontpage2002 ,人民邮电出版社 ,2001年6月第1版9dave mercer . asp3.0编程起步 ,人民邮电出版社 ,2001年4月第1版10forrest houlette.sql编程起步 .人民邮电出版社 ,2002年二月第1版11data c j.an introducetion to database system(ed.6).add
4、ision_wesley,199512ullman j d.principles of database systems.computer sciencepress,198013cay s. horstmann/gary cornell,core java volume,ninth edition.2013专业班级学生要求设计(论文)工作起止日期2015年3月23日2015年7月3日指导教师签字日期2015年3月23日教研室主任审查签字日期系主任批准签字日期网上蛋糕销售系统的设计与实现摘 要二十一世纪的今天,互联网已成为人类必不可少的生活必需品,与此同时,计算机技术也越发成熟。计算机技术广泛应
5、用于互联网,例如电子商务则是其中发展最快的一项。电子商务实现了买卖双方在虚拟的环境中交易的方式,而实用最大的则是网站。网上蛋糕销售系统便于用户能不受时间限制、不受地区限制的搜索以及购买自己想要的蛋糕。本系统的前台主要功能包含:蛋糕类别模块、蛋糕查询模块、特价蛋糕模块、蛋糕车模块、订单模块、用户信息模块、系统公告模块等。后台主要功能包括:修改密码模块、用户管理模块、蛋糕类别模块、蛋糕管理模块、订单管理模块等。网上蛋糕销售系统通用jsp建立前台,并且连接mysql数据库建立后台。利用myeclipse跟tomcat建立一个mvc框架的网上蛋糕销售系统。关键词:网上蛋糕销售系统; jsp技术; mv
6、c框架the design and implementation of the online cake selling systemabstract today, twenty-first century, the internet has become an essential human necessities, at the same time, computer technology is more mature. computer technology is widely used on the internet, e-commerce is one of the fastest g
7、rowing one. e-commerce transactions between buyers and sellers realize the way in the virtual environment, and practical is the largest site. online bookstore system facilitates users without time limit, without geographical restrictions they want to find and buy books. front main function of this s
8、ystem include: book category module, query module books, special books module, shopping cart module, order module, user information module, system announcements module. background main function of this system include: change password module, the user management module, class module library, library
9、management module, order management module. universal jsp online bookstore system to establish reception, and connect mysql database to establish the background. use myeclipse to create a mvc framework of the online bookstore system with tomcat.keywords: online cakestore; jsp technology; mvc framewo
10、rk目 录1 绪论11.1 课题背景11.2 课题意义21.3 课题目标22 可行性研究32.1 引言32.1.1 编写目的32.2 可行性研究33 关键技术53.1 mvc框架53.1.1 mvc编程模式53.1.2 框架内容53.1.3 常见框架63.2 jsp技术63.2.1 jsp简介63.2.2 jsp技术原理73.3 spring框架73.4 struts框架83.5 hibernate框架94 项目开发计划114.1 引言114.2 项目概述114.3 产品114.3.1 程序114.3.2 功能114.4 实施计划115 需求分析125.1 项目概述1215.1.1 功能描述1
11、25.1.2 用户及一般约束125.2 系统功能设计125.2.1 会员功能125.2.2 管理员功能135.3 模块说明135.4 设计的主要思想145.5 数据字典146 概要系统设计166.1 总体设计166.2 蛋糕销售系统模块总体结构166.3 系统结构图176.3.1 总体结构图176.3.2 网络蛋糕销售系统的e-r图177 详细系统设计187.1 前台部分187.1.1 用户登录187.1.2 安全退出系统207.1.3 用户注册217.1.4 蛋糕查询227.1.5 购物车系统247.1.6 订单系统247.1.7 系统首界面257.2 后台部分257.2.1 登录界面267
12、.2.2 管理员主界面267.2.3 修改密码277.2.4 用户管理277.2.5 蛋糕类别287.2.6 蛋糕管理3027.2.7 订单管理317.3 数据库的分析与设计327.3.1 数据库的概念327.3.2 数据库的分析与设计32 数据库的概念结构设计33 数据库的逻辑结构设计36 数据库的连接原理387.3.3 中文乱码问题处理39结 论40参考文献42致 谢43外文原文44中文翻译5131 绪论1.1 课题背景 21世纪以来,计算机技术及其应用以迅雷不及掩耳之势风靡全社会,推进了各个领域应用系统的高速发展,其中,互联网的应用最为迅捷
13、,人类开始进入了以计算机为主的网络信息时代。互联网的出现为人类的生产生活带来了极大的方便,因此,短短20年间,互联网已渗透到经济社会的各个领域,成为生产建设、科技创新、经济贸易、生活娱乐、文化传播、公共服务的新型平台和变革力量,其中电子商务的应用最为广泛。电子商务即以信息网络技术为手段,以商品交换为中心的商务活动,通常是指在全球各地的商业贸易活动中,在因特网开发的环境下,基于浏览器/服务器应用方式,买卖双方不需见面就能实现的商品消费活动。电子商务网站为用户提供了可靠的信息存储和快捷的处理信息的方式。作为计算机应用技术的一部分,电子商务使用计算机管理某企业或公司的产品销售信息,具有手工管理无法企
14、及的优越性,例如:检索迅速、效率高、存储量大、安全性好、成本低廉等。因此开发一套电子商务软件很有其必要性。 随着计算机硬件技术的日趋先进,计算机已成为当前人类社会不可或缺的工具,无论在生活、工作还是娱乐、学习方面都离不开计算机。硬件的发展为软件的发展提供了强有力的条件,因而电子商务技术也日渐完善,随处可见的网络购物系统正是其见证者。现在有很多网上购物网站,譬如电器信誉最好的京东商城,物价最低廉的淘宝网,图书信誉最高的亚马逊,这些都是各个销售领域的代表,这些优越网站也是实现本系统最好的参考。目前,电子商务系统中的网上购物功能已相当成熟,其中所涉及的网络技术和数据库技术也基本完善,本系统的开发参考
15、大多数电子商务网站,是基于jsp技术的网站,其开发主要包括前台应用程序的开发以及后台数据库的建立与维护两方面。其中,前台应用程序要求程序功能完备,页面美观足够吸引客户,最重要的是易操作和使用;而后台数据库的建立与维护要求数据库有完整性、安全性、一致性的特点,方便数据的统一管理和使用。该项目开发的目的是要满足消费者和管理员双方的需求,达到一种双赢的结果。1.2 课题意义本课题的研究意义在于人们只要有一台电脑或一个笔记本,异或是一部智能手机,也可以是其他任意一种上网设备,就可以随时随地在自己需要的时候在网上查找到自己喜欢的蛋糕并且可以购买,即使在家也可以订购蛋糕悠然等待送货上门,如此一来,购买蛋糕
16、变得快速而又便捷。另一面,对于卖家而言,卖家可以在家中做生意,只需在固定的时间点上网站查看客户信息,就可及时制作,尽快发货。卖家在家中做生意不仅消除了开店面的地域限制,省去了租地成本,而且通过网络还扩大了客源,促进了销售,同时在家也能兼顾到家中的生活大小事务,更自由也更轻松。1.3 课题目标 网上蛋糕销售系统的主要目的是实现用户网上查找以及购买蛋糕的需求。在这个系统中,每个用户都可以注册自己的账号,设置自己的密码,登录后能够通过蛋糕查询快速检索,在短时间内可以查看到蛋糕的相关信息简述,从而找到符合自己要求的蛋糕。蛋糕选定之后就可以放入购物车下订单。网站管理员进入后台后可以查看客户信息,蛋糕信息
17、,订单信息以及其他信息,并且有权修改和删除这些信息。2 可行性研究2.1 引言 人类已经步入网络信息时代,网络如今与我们十分贴近,渗透到了我们生活的方方面面。现代是一个知识经济的时代,信息正以空前绝后的速度在膨胀,未来的世界将完全是一个网络的世界。 我们是21世纪的主力军,我们有责任承担起属于我们的任务,我们有责任让我国紧跟时代的步伐,让我国更快地适应这个高科技的社会。为了实现我们的任务,我们必须具备从外界及时迅速获取有效科学信息的能力,要具备判断信息真伪的能力,也要具备传播科学信息的能力,而网络为我们锻炼这种能力提供了有利的条件。因此,电子商务应运而生,网络销售作为其产物也快速发展。网上蛋糕
18、销售系统正是网络销售中非常普遍的的一个系统,它的主要目的是让全国各地的人们随时随地就可以买到自己想吃的蛋糕。传统的蛋糕销售主要是以店面为基础,要想销量好,就必须要选择一个有利的地理位置,还要做宣传,这些都要花费很多的钱财,并且由于受地域限制的影响,客源也十分有限。而网络蛋糕销售系统恰好完美地解决了这些问题,利用网络可以在家里做生意,不仅避免了选取店面宣传店面带来的开支,而且网络上人人都能看到网店,扩大了客户来源,增加了销量,也就增加了营业额。当今社会的人们对电脑操作十分熟悉,因而这样的系统非常易于接受和采纳,是一种相对实用的软件工具。2.1.1 编写目的编写该可行性研究报告的目的在于对网上蛋糕
19、销售系统作充分的可行性研究分析,显示其存在的重要性和必要性。要达到这个目的,需要对比原始的蛋糕销售方式和网上销售方式,通过对比,明确网上蛋糕销售系统的开发方向和途径,确定该系统的开发步骤以及对策,务必要显示出该系统的优越性、先进性。2.2 可行性研究 可行性研究阶段的主要任务是对系统是否能够正常实现等问题做出判断,避免在花费了大量人力物力财力之后才发现系统不能实现引起的浪费,可行性分析要求用最小的代价在最短的时间内确定问题是否能够解决。这里,我们将通过以下三个方面对该网上蛋糕销售系统作出分析。(1)经济可行性分析 网上蛋糕销售系统一旦实现,能给人们带来了极大的方便,只需要有网,人们就 能够随时
20、随地订购蛋糕,因此,从消费群体来看,构建一个网上蛋糕销售系统在经济 上是完全可行的。 就电子商务的发展而言,电脑的普及为消费者网上购物提供了有利的条件,当然 网上蛋糕销售系统也是其受益者。网上蛋糕销售系统是一个基于电脑的系统软件,消 费者只要借助电脑就可以足不出户买到蛋糕,商家也可以从中获取利润,可谓两全其 美。 开发本系统所使用的软件并不过度依赖于计算机硬件,因此对计算机硬件并没有 太高的要求,一般的计算机配置都可行,无需花费高价购买硬件设施;开发本系统的 软件也可以免费下载,所以无论软件还是硬件,开发本系统都节省成本,具有经济可 行性。(2)技术可行性分析 本系统的开发并不十分复杂,但是为
21、了使系统更加完美,必须很多技术结合使用, 要结合这些技术,必须要有一套完整的开发方法。此次开发分为前台和后台两部分, 前台主要应用jsp技术,后台用到了spring、struts、hibernate框架,关于三大框 架的具体信息将在下一章做出介绍,此处不作详解。(3)操作可行性分析 在网络信息高速发展的时代,越来越多的人掌握了计算机的使用。而本系统但凡 是能够使用计算机的人都能够轻而易举地使用本系统,因此,从操作上来说本系统完 全可行。 由以上经济、技术、操作三方面的分析可以看到,本系统无论从哪种角度考虑都 是可行的。3 关键技术3.1 mvc框架mvc全名是model view contro
22、ller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面 显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。mvc被独特的发展起来用于 映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。3.1.1 mvc编程模式mvc 是一种使用 mvc(model view controller 模型-视图-控制器)设计创建 web 应用程序的模式:(1)model(模型)表示应用程序核心(比如数据库记录列表),是应用程序中用于处理应用程序数据逻辑的部分
23、。通常模型对象负责在数据库中存取数据。(2)view(视图)显示数据(数据库记录),是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。(3)controller(控制器)处理输入(写入数据库记录),是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。mvc 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。mvc 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。3.1.2 框架内容mvc是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用mvc应用程序被分成三个核心部件:模型、视
24、图、控制器。它们各自处理自己的任务。最典型的mvc就是jsp + servlet + javabean的模式。(1)视图:视图是用户看到并与之交互的界面。对老式的web应用程序来说,视图就是由html元素组成的界面,在新式的web应用程序中,html依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括adobe flash和像xhtml,xml/xsl,wml等一些标识语言和web services。mvc好处是它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。(2)
25、模型:模型表示企业数据和业务规则。在mvc的三个部件中,模型拥有最多的处理任务。例如它可能用像ejbs和coldfusion components这样的构件对象来处理数据库,被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。(3)控制器:控制器接受用户的输入并调用模型和视图去完成用户的需求,所以当单击web页面中的超链接和发送html表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。3.1.3 常见框架
26、常见的mvc框架主要有三种,分别是spring、struts、hibernate。这三种框架分别在3.3,3.4,3.5节做详细介绍。3.2 jsp技术3.2.1 jsp简介jsp是java server page的缩写,是servlet的简化。它是由sun公司提出的,并由许多公司参与制定的一种动态网页标准。其主要特点是在html页面中加入java代码片段,或者使用各种jsp标签,包括使用用户标签,构成jsp网页。早期使用jsp页面的用户非常广泛,一个web应用可以全部由jsp页面组成,只辅以少量的javabean即可。自j2ee标准出现以后,人们逐渐认识到使用jsp充当过多的角色是不合适的。
27、因此,jsp慢慢发展成单一的表现层技术,不再承担业务逻辑组件及持久层组件的责任。虽然有各种模板技术,但jsp还是最经典、应用最广的表现层技术。3.2.2 jsp技术原理 jsp通过在标准的html页面中插入java代码,其静态的部分无须java程序控制,只有那些需要从数据库读取并根据程序动态生成信息时,才使用java脚本控制。从表面上看,jsp页面已经不再需要java类,似乎完全脱离了java面向对象的特征。事实上,jsp是servlet 的一种特殊形式,每个jsp页面就是一个servlet 实例-jsp页面由系统编译成servlet, servlet 再负责响应用户请求。jsp其实也是ser
28、vlet 的一种简化,使用jsp时,其实还是使用servlet,因为web应用中的每个jsp页面都会由servlet 容器生成对应的servlet。对于tomcat而言,jsp页面生成的servlet放在work路径对应的web应用下。jsp的工作原理图如图3-1所示:图3-1 jsp工作原理图 根据上面的工作原理图,我们可以得到以下四个结论: (1)jsp文件必须在jsp服务器内运行; (2)jsp文件必须生成servlet才能执行;(3) 每个jsp页面的第一个访问者速度都很慢,因为必须等待jsp编译生成 servlet;(4)jsp页面的访问者无须安装任何客户端,甚至不需要可以运行jav
29、a的运行环境, 因为jsp页面输送到客户端的是标html页面。3.3 spring框架 spring 为企业应用的开发提供了一个轻量级的解决方案。该解决方案包括:基于依赖注入的核心机制,基于aop的声明式事务管理与多种持久层技术的整合,以及优秀的webmvc框架等。 spring 为j2ee应用的表现层、业务逻辑层及数据持久层都提供了极好的解决方案,因为spring提供的不仅仅是一种框架,而且提供了一种企业应用的开发规范。spring是实际开发的抽象,其提供的模板设计大大简化了应用的开发。 spring的系列template将通用步碟以优雅的方式完成,留给开发者的仅仅是与特定应用相关的部分,从
30、而大大提高企业应用的开发效率。spring支持对pojo的管理,能将j2ee应用各层的对象焊接在一起,甚至这些对象无须是标准的javabean。 spring框架是java中用来解决对象之间相互调用的,它可以降低对象之间调用的耦合性,所以使得编程很容易,使得程序的伸缩性提高。控制反转(ioc)思想对于降低对象之间的耦合性提供了很多好处,而spring框架则是使得ioc变得标准,从而使得程序员根据spring框架来进行开发。spring框架是用最基本的javabean来代替ejb,使企业应用开发变得简洁,与此同时,还能提供更多的应用功能,并且任何的java应用都能使用spring框架。sprin
31、g框架实际上就是使得整个应用比较统一,让程序员更加容易地使用j2ee来开发程序,并且通过揉合单框架形成组合,从而建立起一个体系。因此spring框架提供了一个更加完善的开发环境,能提供企业级的服务给pojo对象。3.4 struts框架 从实际应用开发的角度而言,struts 应该是mvc框架的第一选择。因为它具有稳定性,以及成熟的开发群体和丰富的信息资埠,保证了企业应用的稳定开发。经过长达六年的发展,struts 已经成长为稳定、成熟的框架,并且是所有mvc框架中应用最广泛的框架。 近来,webwork也加入到struts 阵营,更提高了struts 的竞争力。如今,struts作为全世界第
32、一个开源mvc框架,具有高度的成熟性和广泛的项目应用,保证了其应用的稳定性。struts框架是用来规范mvc的开发。在struts中, jsp、actionservlet、actionform、action、javabean、配置文件等是通常使用的组件。其工作原理如图3-2所示。图3-2struts 组件之间关系当有用户进行操作请求时,jsp界面则会将内容交给actionservlet。 (1)actionservlet会使得表单信息封装于actionform内,并且转交给action。 (2)actionservlet让action直接调用dao包,而不是直接处理业务逻辑。 (3)actio
33、n将接下来要跳转的jsp页面传给actionservlet。 (4)actionservlet实现跳转,并且显示在jsp页面上。3.5 hibernate框架 hibernate 是目前最流行的开源对象关系映射(orm)框架。hibernate 采用低侵入式的设计,完全采用普通的java 对象(pojo),而不必继承hibernate 的某个超类或实现hibernate的某个接口。因为hibernate是面向对象的程序设计语言和关系数据库之间的桥梁,所以hibernate允许程序开发者采用面向对象的方式来操作关系数据库。 hibernate将数据库中的每个记录,都当做一个java对象,这样可以
34、使得编程变得容易,也能使得维护性变高。对象关系映射(ormapping)是数据库层的一种设计思想,而hibernate则是将它作为基础从而使得程序员所写的程序变得规范。po、框架api、hibernate配置文件、hibernate映射文件等组件是hibernate中经常使用的。关系如下图3-3所示。图3-3hibernate 各组件之间关系一个对数据库进行的操作,其流程如下。(1)首先,api框架获取hibernate配置文件,并连接到数据库。(2)其次,操作po时,框架api根据hibernate映射文件,来创建要操作的表名与列名。(3)框架api执行相应sql语句。4 项目开发计划4.1
35、 引言主要对开发该系统的时间、进度、软硬件设备配置等进行说明规划。4.2 项目概述为了能够很好地完成该项目的开发计划,需要明确该软件要实现的主要功能。制定的实施计划包括:明确主要工作;确定开发使用的语言及数据存储形式;确定工作进度;制定测试计划。4.3 产品4.3.1 程序提交的系统为“网上蛋糕销售系统”,采用myeclipse平台,后台数据库使用mysql。4.3.2 功能 (1)用户注册登录; (2)信息查询,包括蛋糕、订单、公告、论坛; (3)修改,包括用户修改购物车信息和管理员修改蛋糕、订单、公告、论坛信息;(4)保存,包括用户订单和管理员更新的信息。4.4 实施计划 工作任务的分解:
36、 (1)系统模块的分解 系统分为两大模块:用户模块,管理员模块。 (2)开发者的主要任务 设计并实现网上蛋糕销售系统,包括界面设计和代码最终实现。 5 需求分析5.1 项目概述5.1.1 功能描述本系统采用页面显示的方式,使人机交互更为方便,使系统可以可靠运行,有较高的安全性,满足实用性和经济性要求。5.1.2 用户及一般约束系统的用户有两类:用户会员和系统管理员。用户会员可以浏览查询蛋糕信息,并且可以下订单,还能在论坛上发表言论。管理员进入后台可以修改蛋糕信息,也可以修改用户和订单信息,还可以发布公告。在本系统中,管理员的权限是最高的。5.2 系统功能设计5.2.1 会员功能本系统分为前台和
37、后台两个平台,前台主要是给用户操作,用户在此可以查询蛋糕、购买蛋糕,可以查看系统公告、留言评论,也可以修改个人信息、查看日历等,其功能显示如图5-1所示。图5-1 会员功能5.2.2 管理员功能后台主要是网站管理员操作,管理员拥有网站最大的权限,他能管理并且查看用户的所有信息,以及对蛋糕、公告、和论坛的增加、删除和修改操作。其具体功能如图5-2所示。图5-2 管理员功能5.3 模块说明会员模块:会员即用户,用户需要先注册才能登录。登录之后用户可以在网上查看对比所有蛋糕信息,如果有看中的蛋糕即可加入到购物车之中,然后下订单,若购物车中有不想要的蛋糕可以删除。除此之外,用户可以查看公告信息,也可以
38、在网站论坛上发表评论。 管理员模块:管理员具有系统最高权限,功能如下: (1)修改管理员密码:管理员能够在这里修改下次登录的密码,但是管理员的用户名是不可更改的。 (2)用户信息管理:管理员能够查看会员资料,并有权将其删除。被管理员删除的会员将无法用其删除的账户登录该系统。 (3)查看蛋糕信息:管理员能够查看全部蛋糕类别信息及其属性,能够添加和删除蛋糕类别。 (4)蛋糕信息管理:管理员能够查看蛋糕信息,比如查看所有蛋糕的属性,以及可以帮蛋糕设置特价,还能对蛋糕的属性进行添加、修改和删除。 (5)订单信息管理:管理员能够查看订单的信息,并可以选择对其进行受理或者删除操作。 (6)网站论坛:管理员
39、能查看所有用户在网站论坛的留言,对这些留言具有删除权限。 (7)公告管理:管理员查看网站所发布的所有公告,并且及时对公告做出更新。5.4 设计的主要思想 网上蛋糕商城这个系统主要用的是mvc设计思想。mvc模式即model-view-controller模式。用户通过网上蛋糕商城这个界面的一些按钮,系统会找到其相对应的struts配置文件,然后到控制层找到相对应action,并且找到操作方法,再到dao包里找到对数据库的操作方法,最后产生一个session,对数据库进行一次操作,如增删改查。 model表示应用程序核心,主要是使应用程序的数据结构和事物逻辑封装起来,它能体现出应用程序的状态,当
40、用户对数据进行操作时,可以在view中展现出来。 view显示数据,它是用来展示model中的内容,当模型数据改变的时候,则会通过jsp界面将变化展现出来。controller应用程序中处理用户交互的部分,它能够响应用户的操作请求,将模型跟视图连接在一起,并且把数据库中的数据存放到模型中,然后调用视图。5.5 数据字典 数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。 数据字典(data dictionary)是一种用户可以访问的记录数据库和应用程序源数据的目录。该系统中涉及的主要的数据字典如下所示:文
41、件条目: (1)文件名:会员清单 组成账号+密码+姓名+性别+年龄+住址+电话+邮箱 组织:按序列号递增 (2)文件名:蛋糕种类清单 组成蛋糕名称+蛋糕品牌+介绍+图片+价格+特价+操作 组织:按序列号递增 (3)文件名:购物车清单 组成蛋糕名称+价格+数量+金额+删除 组织:按序列号递增 (4)文件名:订单清单 用户所见: 组成订单编号+金额+下单日期+订单状态+编辑 组织:按序列号递增 管理员所见: 组成用户信息+订单编号+金额+下单日期+送货地址+付款方式+操作 组织:按序列号递增加工说明:(1)加工名:会员信息、蛋糕信息、订单信息查询 加工逻辑:根据输入要查询的会员、蛋糕和订单信息,检
42、索出结果 输入流:会员信息、蛋糕信息、订单信息 输出流:会员信息清单、蛋糕信息清单、订单清单(2)加工名:会员信息、蛋糕信息、订单信息更新 加工逻辑:根据输入的会员、蛋糕、订单信息更新相应的清单 输入流:修改的新信息 输出流:修改后的对应清单6 概要系统设计6.1 总体设计程序运行开始后,用户将通过浏览器看到一个动态页面,页面中有注册和登录两个按钮,在未注册的情况下,用户点击登录按钮系统会提示注册之后才能登录。点击注册用户会进入注册窗口,注册成功之后,输入用户名密码就能够登录进入系统。登录进系统之后,用户可以通过蛋糕查询查看所有的蛋糕信息,也能通过特价蛋糕进行对比,之后用户可以选择购买蛋糕,下
43、订单。同时,用户可以在系统论坛中发表评论,或者查看网站公告信息。点击进入后台后,管理员可以登录后台,登录之后管理员可以修改管理员的用户密码,下次启动生效。管理员在后台可以查看用户、蛋糕、公告、订单等信息,并且随时可以对这些信息进行增删改查操作。网上蛋糕销售系统具有以下特点: (1)采用c/s工作模式,即客户端/服务器工作模式; (2)直观的jsp网页界面。6.2 蛋糕销售系统模块总体结构根据用户需求,该系统划分为以下9大模块:(1)主页:在这里我们可以看见该系统的主要功能和信息栏;(2)用户注册登录:在这里我们可以注册账户,其中有几项是必须要填的,为了 方便购物,注册之后需要登录;(3) 蛋糕
44、查询:在这里我们可浏览蛋糕的信息,看到喜欢的可以点击进入购物车;(4)购物车:这里主要是存放想要购买的蛋糕;(5)订单:用户可以查看订单的信息,也可以删除订单;(6)个人信息修改:用户可以在此界面修改信息;(7)公告:用户可以在此查看系统公告;(8)论坛:用户可以发表言论;(9)后台:管理员进入后台后可以对各个模块进行修改、更新。6.3 系统结构图6.3.1 总体结构图 总体结构是从大的方向出发来看的,主要是系统的九大模块。该系统的总体结构图如图6-1所示。6-1 网上蛋糕销售系统总体结构图6.3.2 网络蛋糕销售系统的e-r图6-2 网上蛋糕销售系统的e-r图7 详细系统设计7.1 前台部分
45、前台主要是让会员使用,可以通过个人账号登录系统,然后浏览所有的蛋糕信息,以及通过关键字检索蛋糕信息,并且进行留言以及查看网站公告。7.1.1 用户登录用户登录是要进入系统的第一步,用户输入个人账号和密码,系统会根据用户输入的信息到数据库的t_user表中查找信息,若是数据库中的信息与用户输入的信息一致,则跳出的窗口中会提示登录成功。如果不输入账号名和密码,窗口会提示请输入用户名和密码;如果只输入用户名不输入密码,窗口会提示请输入密码;如果输入的用户名和密码不匹配,则会提示密码输入错误;如果不输用户名只输密码,窗口会提示请输入用户名。这五种情况就是五个测试用例,如表7-1所示。表7-1 登录测试
46、表测试对象测试案例预期结果实际结果是否通过用户登录用户名:null密码:null报错,请输入用户名报错,提示请输入用户名通过用户登录用户名:yll密码:null报错,请输入密码报错,提示请输入密码通过用户登录用户名:yll密码:l报错,用户名或者密码错误报错,提示用户名或者密码错误通过用户登录用户名:null密码:1报错,请输入用户名报错,提示请输入用户名通过用户登录用户名:yll密码:123成功登录提示成功登录通过 用户登录系统按图7-1流程图执行:图7-1 登录系统 判断用户输入是否正确是调用action里useraction类里的userlogin方法,主要代码如下:list userl
47、ist=userdao.gethibernatetemplate().find(sql,con);if(userlist.size()=0)this.setmessage(用户名或密码错误);this.setpath(qiantai/default.jsp); map session= servletactioncontext.getcontext().getsession(); tuser user=(tuser)userlist.get(0); session.put(user, user); cart cart=new cart(); session.put(cart, cart); t
48、his.setmessage(成功登录); this.setpath(qiantai/default.jsp);用户登录界面如图7-2所示,登录成功窗口如图7-3所示,未输入密码报错窗口如图7-4所示,未输入用户名报错窗口如图7-5所示,用户名和密码不匹配的报错窗口如图7-6所示。 图7-2 用户登录界面 图7-3 登录成功 图7-4 报错1 图7-5 报错2图7-6 报错37.1.2 安全退出系统出于对账户安全的考虑,本系统特别增加了安全退出系统的功能。当用户需要退出网站时,必须点击退出系统才可以,这样做的目的是使数据库产生的session清楚地了解到当前用户的信息,否则,当其他用户登录这个
49、网站时,就会保存当前用户的登录信息,而其他用户可以借此使用当前用户的账号购买蛋糕,对当前用户造成损失。安全退出系统的关键代码如下:map session= servletactioncontext.getcontext().getsession();session.remove(user);return actionsupport.success;安全退出界面如图7-7所示。图7-7 退出界面7.1.3 用户注册在用户没有个人账号的情况下,可以点击注册进入注册界面注册个人账户。注册界面包含8个信息,其中账号和密码是必须要填的内容,其他是选填项。填写完成后,单击确定便能够注册成功,用户就拥有了自
50、己的个人账号。如果输入的信息不符合要求,提交之后系统会报错,提示注册失败。此模块调用的是java里useraction类的userreg()方法实现,其主要代码如下:tuser user=new tuser();user.setusername(username);user.setuserpw(userpw);. .userdao.save(user);注册界面如图7-8所示:图7-8 注册界面此模块综合考虑了各方面的因素,基本已经完美,但还有一个缺陷,注册按钮调用的是check1()函数,该函数在此处只检查了账号和密码是否为空,并没有在数据库中进行关键字对比,因此没有检测账号的唯一性。从理论
51、上讲,当注册的账号已经存在时,系统是应该报错的,并且提示重新输入一个账户,但在此系统中账号重复并没有报错,而是对原来的账户进行了覆盖。此功能的测试用例如表7-2所示。表7-2 注册测试表测试对象测试案例预期结果实际结果是否通过用户注册账号:null 密码:null报错,请输入账号报错,提示请输入账号通过用户注册用户名:null密码:1报错,请输入账号报错,提示请输入账号通过用户注册用户名:m1密码:null报错,请输入密码报错,提示请输入密码通过用户注册用户名:zyw密码:1注册成功注册成功,请登录通过用户注册用户名:zhangyuwen密码:1报错,请用户重新输入用户名注册成功不通过7.1.
52、4 蛋糕查询 蛋糕查询分为按关键字查询和按类别查询两种查询方法。按关键字查询是指在蛋糕输入框里输入关键字,此处采用的是模糊查询,所有含有搜寻的关键字的蛋糕都会列出。若输入框里输入内容为空,点击查询按钮,则会列出所有蛋糕信息。此处调用的是goodsaction里的goodssearch()方法。从数据库里查找符合查询条件的蛋糕,并且跳转到goodssearch.jsp界面。此处查询语句如下: map request=(map)servletactioncontext.getcontext().get(request);string sql=from tgoods where goodsdel=n
53、o and goodsname like %+goodsname.trim()+%;list goodslist=goodsdao.gethibernatetemplate().find(sql);request.put(goodslist, goodslist);return actionsupport.success;空查结果如图7-9所示:图7-9 查询界面按蛋糕类别查询则是根据类别名称快速搜索。这种查询方法是调用catelogaction类中的catelogall()方法来查询所有的该类别的蛋糕信息,并且将查询到的所有信息都显示到goodsbycatelog.jsp页面。用户只需点击类别信息,该类别蛋糕即可都显示出来,主要代码如下:list goodslist=goodsdao.gethibernatetemplate().find(sql,con);request.put(goods
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2012年7月国开电大专科《办公室管理》期末纸质考试试题及答案
- 2026年中国铝钢管件行业市场前景预测及投资价值评估分析报告
- 2026年中国真空泵行业市场专项调研及投资前景可行性预测报告
- 2025年华能庆阳煤电核桃峪煤矿面向社会招聘生产性灵活用工179人笔试考试备考试题及答案解析
- 2026福建省宁德市蕉城区消防大队招聘笔试考试参考试题及答案解析
- 子宫颈癌的预防与治疗课件
- (统编2024版)道德与法治八年级上册第三单元 走进社会生活 大单元教学设计
- 外科普外科创面护理常规流程
- 超声科腹部超声引导抽穿术技术要点
- 2025年生前医疗护理生后事合同模板
- 大学生机器人工程专业职业生涯规划书
- 2025商业大厦租赁合同范本
- 脑梗死中医诊疗方案
- 知识产权对新质生产力的法制保护
- 《中国海军的发展史》课件
- 货车封条管理制度内容
- 【绘本】小猫钓鱼故事儿童故事-课件(共11张课件)
- 安全课《保护鼻子》
- “正大杯”第十五届全国大学生市场调查与分析大赛参考试题库(含答案)
- 河南省周口市郸城县2024-2025学年九年级上学期期中化学试卷
- 电力输电线路施工安全培训
评论
0/150
提交评论