




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科生毕业论文(设计)乐淘购物系统的设计与实现毕业论文目 录1 绪论11.1 项目背景11.2 研究意义11.3 相关领域介绍11.4 本系统概述12 乐淘系统分析32.1 系统需求分析32.1.1 功能需求32.1.2 性能需求42.2 系统可行性分析42.2.1 技术及开发方法可行性42.2.2 管理可行性42.2.3 经济可行性42.3 业务流程分析53乐淘网设计73.1 系统物理环境配置73.2 项目规划73.3 系统概要设计83.4 数据库设计103.4.1 概念设计103.4.2 逻辑设计123.4.3 物理设计133.5 系统详细设计143.5.1 用户模块设计143.5.2 管理员模块设计174乐淘网的实现204.1 系统技术实现204.1.1 JSP简介204.1.2 B/S 结构概述204.1.3 Struts 框架简介204.1.4 Oracle简介214.2 系统首页实现214.3 会员注册模块实现224.4 会员登录模块实现234.4.1 会员登陆234.4.2 会员密码找回244.4.3 会员密码修改254.4.4 生成订单264.5 管理员模块的实现284.5.1 管理员登录284.5.2 所有商品查询功能284.5.3 添加商品功能294.5.4 修改商品信息功能304.5.5 查询所有订单功能305 系统测试315.1 系统测试方法315.1.1 系统测试计划315.1.2 系统测试工具315.1.3 系统测试方法和测试类型315.2 系统测试的目的和原则325.3 系统测试325.3.1 系统登录测试要点325.3.2 商品购买测试要点325.3.3 操作权限测试要点325.3.4 数据输入测试要点325.3.5 数据删除测试要点335.4 数据测试效果336 结 论356.1 系统开发总结356.2 存在问题及改进36致 谢37参考文献38 38 本科生毕业论文(设计)1 绪论1.1 项目背景电子商务作为一种新的商业模式,被认为是新知识经济时代和经济一体化趋势的产物,并且随着Internet技术的迅猛发展和Web的日益流行,它的应用也越来越广泛。尽管目前在国内这项技术的硬件基础设施和信息安全技术还不成熟,但可以预见,作为电子商务主要内容之一的网上购物,将成为未来人们主要购物方式之一1。本文首先比较了目前最流行的几种Web应用程序的开发性能,JSP因其良好的跨平台性和安全性,尤其适合应用于开发大型商务网站。1.2 研究意义21世纪是一个以网络为核心的信息时代,数字化、网络化以信息化是21世纪的时代特征。电子商务作为信息时代的一种新的商贸形式,不仅对商务的运作过程和方法产生巨大的影响,实际上也带来了一场革命,其影响将远远超出商务的本身,将对社会的生成和管理,人们的生活和就业、政府职能、法律制度以及文化从多方面改变人类的观念、思维和相互交往的方式。1.3 相关领域介绍在我国,网上购物从无到有也不过短短今年时间。我国第一家网上购物发生在1996年,燕莎友谊商场首次通过网上商城售出一个景泰蓝。虽然货款的支付不是在网上进行的,但这毕竟为我国零售业奏出了网上购物的先声。根据CNNIC的统计结果,截止2004年1月中国互联网用户7950万人,而又有40.7%以上的网民在过去一年里有过网购经历,这就说明中国有过网上购物的用户达到3235.7万人,并且这一数字还在以17%的速度增长,预计到2006年中国网上购物用户将达到6962万人,这说明在中国发展在中国发展网上购物具有良好的群众基础,网上购物方式日趋被大家所接受2。1.4 本系统概述乐淘购物网是开放式系统,其核心思想是提供一个以商品展示为主的界面,向用户和游客展示本网站的所有商品,并实现商品的订购,将极大满足了不远出户的用户需求。本课题的开发工具可以使用Eclipse,开发语言可以是JSP /Java等开发语言,后台数据库可采用Oracle数据库。大乐淘吧购物网系统主要由前台用户登录系统,后台管理员管理系统两个部分组成。本课题主要功能详解如下:用户登录系统:各类商品展示模块,选择商品后的订购模块,商品结算模块。管理员管理系统:主要功能有用户管理模块,商品管理模块,订单管理模块等。 2 乐淘购物网系统分析2.1 系统需求分析系统分析方法来源于系统科学。系统科学是20世纪40年代以后迅速发展起来的一个横跨各个学科的新的科学部门,它从系统的着眼点或角度去考察和研究整个客观世界,为人类认识和改造世界提供了科学的理论和方法。它的产生和发展标志着人类的科学思维由主要以“实物为中心”逐渐过渡到以“系统为中心”,是科学思维的一个划时代突破3。系统分析是咨询研究的最基本的方法,我们可以把一个复杂的咨询项目看成为系统工程,通过系统目标分析、系统要素分析、系统环境分析、系统资源分析和系统管理分析,可以准确地诊断问题,深刻地揭示问题起因,有效地提出解决方案和满足客户的需求。2.1.1 功能需求具体功能描述如下。1一般用户/会员(1)系统遵循开放模式,注册用户可以按照自己的需要查看商品和选购商品;未注册用户也可以任意查看,但在生成订单时要求正式登陆系统。 (2)商品信息主要包括商品编号、商品名称、商品介绍、商品价格。 (3)商品按类别展示。(4)用户可查看订单。2管理员(1)管理员拥有最大权限,可以进入管理页面并配置系统信息。(2)管理员可以查询会员。(3)管理员可以随时更新产品信息,上传新产品,以及删除产品。(4)管理员查看订单状态,对订单进行删除。2.1.2 性能需求可以分为以下几种。1安全性要求:所有访问数据库的操作,必须尽量保证安全。2美观性要求:要求界面美观,操作简便。2.2 系统可行性分析 2.2.1 技术及开发方法可行性本系统基于浏览器/服务器体系人们常说的 B/S体系,系统安装维护简便。数据集中管理,便于分散用户使用,适应互连时代软件的发展趋势。开发技术主要包括JSP, Java, JavaBean, JDBC以及Web应用开发中常用的脚本语言JavaScript。Web服务器采用Tomcat,数据库采用Oracle数据库系统。由于本系统采用的是Java相关的技术具有“一处编译处处运行”的特性,所以系统可跨平台使用,可运行于Linux/Unix和Windows系列操作系统平台4。2.2.2 管理可行性利用面向对象的机构化方法,面向对象方法以“对象”为中心,在分析对象、研究对象及对象的属性的过程中,根据其内在规律建立求解模型。基于这种方法建立的软件系统,不管外部环境或功能需求如何地变化,其对象的内在的规律是不变的,区别于传统方法的以“过程为中心”,以功能分解为基本方法,当功能需求发生变化时,将引起对软件整体结构的修改,导致系统不稳定5。因而,基于这种方法建立的软件系统是不会引起软件结构的整体变化,所以系统是稳定的,利用此方法可以充分达到系统管理可行性的目的。2.2.3 经济可行性通过调查分析开发游戏网站所具备的能力及实现的方法,准确确定游戏网站的总体结构,利用Oracle数据库所具有的能力,以最简洁最容易的方法,使用JSP和Java使其达到快速开发的效果。当今世界正发生着巨大变化,管理信息系统的环境,目标,功能,内涵均随着时间的推移不断发生着变化。从环境上看,世界己变成“市场全球化,需求多元化,竞争激烈化,战略短期化”。一切事物的变化都在加快,企业不得不更加重视变化管理和战略管理。从目标上看,企业要在激烈的竞争中立于不败之地,首先产品和服务要适应市场的需要,其次企业要有效率6。2.3 业务流程分析业务流程分析可以帮助我们了解某项业务的具体处理过程,发现和处理系统调查工作中的错误和疏漏,修改和删除原系统的不合理部分,促成在新系统基础上有话业务处理流程。业务流程分析的目的是:形成合理、科学的业务流程。通过分析现有业务流程的基础上进行业务流程重组(BPR),产生新更为合理的业务流程。业务流程分析主要是定义项目的内容,即对现行的管理进行仔细地回顾和描述,从而认识项目的业务和技术上的具体要求,帮助确定流程工作与合作建模的基本要素,更好地分析理解其同其他要素的关系,例如业务目标、业务策略、面对的问题、产生的影响、组织机构参与者或者相关的企业架构。系统设计以前,要对系统需求进行归纳和分析,查找出所有的业务主角,然后在确定业务主角后,每个主角的相关活动及流程应清晰地制定出来,最终设计出逻辑视图、用户界面示意图7。 下面是对该系统业务流程的简单分析:任何游客都可以对首页的商品进行浏览,但不可购买商品。只有会员有购买的权限,如果游客不是会员则需要进行注册。注册后,在登录时用户名与密码验证通过就能做相关操作。如果用户名不存在或密码不正确,则提示重新登录。如果用户忘记密码,则可以点击忘记密码之后回答相关问题进行找回密码。密码找回后也可进行修改。用户成功登录之后,进入主页面,可随便购买商品。如果当前登录用户为管理员,则可以管理商品信息,查看所有商品信息,对商品进行添加,修改和删除。管理用户信息,查询所有用户的信息,无权对用户信息进行修改和删除。管理订单信息,查询所有订单,可以对订单进行删除。系统业务流程图如图2-1所示。登录失败重新登录首页浏览管理员登录 用户游客订单找回失败重新找回找回成功密码找回忘记密码用户查看浏览商品查询商品查询,添加,修改。查询购买用户登录未注册密码不附重新登录已注册注册失败重新注册用户注册登录成功成功商品浏览和购买生成订单安全退出图2-1 系统业务流程3 乐淘购物网设计3.1 系统物理环境配置系统硬件平台的配置:1CPU:P7350 2.00GHz。2内存:500M。3硬盘:30GB。4基本的输入、输出设备。系统软件平台的配置:如果说硬件是一个系统的身体,那么软件则是一个系统的灵魂,一个系统设计的好坏,不仅要有正确的软件开发思想,也应该有良好的软件开发工具8,乐淘电子商务系统所采用的软件配置环境为:1操作系统:Windows XP Professional Edit Service Pack2。2数据库软件:Oracle。3系统开发软件:Java + JSP。3.2 项目规划本系统的结构包括数据存储层、商务服务器组件及应用服务层。在应用服务层中主要采用Struts技术来构建动态网页来支持整个面向服务对象的应用。整个电子商务系统的网站设计是整个消费客户进行交互的页面,服务对象通过访问网站来获得所需要的信息,该网站的设计提供以下功能:1各种功能的连接。包括注册,登录,浏览和订购。2各种商品的分类展示、商品的详细信息。3各种以往订单纪录的查询。3.3 系统概要设计根据系统分析的结果数据流程图所描述的系统的逻辑模型,把数据流程图上各个处理模块进一步分解,确定系统的层次结构关系,把逻辑模型变为物理模型。在管理信息系统的设计过程中,系统划分的一般原则如下:1子系统要具有独立性。即应把相对独立的事务处理过程作为一个子系统。这样的子系统具有较高的内聚性,与其它的藕合较弱,便于软件开发、使用及日后系统维护。2子系统的划分结果应使数据冗余度较小。应避免部分数据在多个子系统中出现,尤其是修改,以保证系统的安全性、可靠性和数据的一致性。3子系统的划分应能满足目前和日后管理上的需要,功能应齐全,操作要方便且为今后发展留有接口。4子系统的划分应以该单位的管理职能为依据。应尽量避免过分依赖于组织机构,以防止机构变更后为系统带来不必要的麻烦。从公司的组织结构上出发,把整个管理信息系统划分成多个子系统。每个子系统的功能相对独立,但是子系统之间有必要的数据联系。 对电子商务系统的数据流图采用变换中心法和事务中心法进行分析,对其逐步进行功能分解,直到分解成为含义明确、功能单一的单元功能模块,从而得到系统的功能模块结构图,即系统的功能图。系统能模块结构图反映了电子购物商城的系统功能模块的划分,如图3-1所示。快乐淘吧网上购物系统管理员会员游客浏览商品浏览商品生成订单核对订单管理订单管理商品管理用户图3-1 系统功能模块结构图1 游客模块功能描述注意:游客没有购买商品的权限。(1)商品展台模块:商品分类浏览、商品详细信息。2用户模块功能描述(1)商品展台模块:商品分类浏览、商品详细信息。(3)用户模块:注册新用户、登录、用户修改密码、用户找回密码。(4)订单模块:查询个人订单列表。3管理模块功能描述(1)用户管理:登录;查询用户。(2)商品管理:添加、修改、删除商品信息。(3)订单管理:查看订单。3.4 数据库设计3.4.1 概念设计概念结构设计是将分析得到的用户需求抽象为信息结构(即概念模型)的过程,它是整个数据库设计的关键。概念结构的主要特点是:1.能真实、充分地反映现实世界。2.易于理解。3.易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。4.易于向关系、网状、层次等各种数据模型转换。概念结构是各种数据模型共同基础,它比数据模型更独立于机器、抽象,更加稳定。为了把用户的数据要求清晰明确的表达出来,通常要建立一种面向问题的数据模型,按照用户的观点来对数据和信息建模。最常用的概念性数据模型就是E-R模型9。管理员属性图如图3-2所示。管理员姓名管理员账户管理员密码管理员信息 图 3-2 管理员信息实体属性图用户属性图如图3-3所示。会员密码会员年龄会员姓名会员职业会员名称用户信息 图 3-3 用户信息实体属性图商品属性图如图3-4,3-5所示。大类别编号 大类别名称大类别信息图 3-4 大类别商品信息实体属性图 商品名称小类别编号商品介绍商品价格大类别编号商品信息图 3-5 小类别商品信息实体属性图 订单属性图如图3-6所示。联系电话订货地址会员姓名会员名称订货编号运货方式商品信息 图 3-6 小类别商品信息实体属性图3.4.2 逻辑设计数据库逻辑设计分为三个阶段,分别是:用户要求、建立E-R 模型和数据库模式设计。数据库逻辑设计中的第一阶段收集和分析用户需求是按以下四步进行的:分析用户活动,确定系统范围,分析用户活动所涉及的数据和分析系统数据。逻辑设计第二阶段建立E-R 模型分两步,首先应进行局部E-R 模型设计,然后进行总体E-R 模型的设计。逻辑设计第三阶段在数据库模式设计阶段分两步进行,第一步初步设计,把E-R 图转换为关系模型,第二步优化设计,对模式进行调整和改善。我们所要进行研究的是逻辑设计的第三步即将E-R图像关系模型转化。下面把实体及实体间关系转换成为关系模型。实体转换出的关系模式:用户信息表会员名称,会员密码,真实姓名,会员年龄,会员职业管理员信息表管理员账户,管理员密码,管理员名称大类别商品信息表大类别编号,大类别名称小类别商品信息信息表大类别编号,小类别编号,商品名称,商品价格,商品介绍订单信息表订货编号,会员名称,会员真实姓名,订货地址,联系电话,运送方式3.4.3 物理设计数据库物理设计包括:选择存储结构、确定存取方法、选择存取路径、确定数据的存放位置。主要解决选择文件存储结构和确定文件存取方法的问题。在数据库中访问数据的路径主要表现为如何建立索引。如要直接定位到所要查找的记录,应采用索引方法存取方法(索引表)。顺序表只能从起点进去向后一个个访问记录。在上面的实体以及实体之间关系模式的基础上,形成数据库中表以及各表之间关系。在数据库中,索引就是表中数据和相应存储位置的列表。使用索引可以大大的减少数据查询的时间。但需要注意的是索引虽然能加速查询的速度,但是为数据库中的每张表都设置大量的索引并不是一个明智的做法。应根据系统的具体情况创建索引。用户信息表如表3-1所示。表3-1 用户信息表字段名说 明类 型长 度可否为空主键name会员名称varchar250否是password会员密码varchar250否否reallyname真实姓名varchar210否否age会员年龄int否否procession会员职业varchar250否否大类别商品信息表如表3-2所示。表3-2 大类别商品信息表字段名说 明类 型长 度可否为空主键bigId大类别编号number4否是bigName大类别名称varchar250否否小类别商品信息表如表3-3所示。表3-3小类别商品信息表字段名说 明类 型长 度可否为空主键bigId大类别编号number4否是smallId小类别编号number4否否goodname商品名称varchar250否否introduce商品介绍varchar2200否否price商品价格number4否否管理员信息表如表3-4所示。表3-4 管理员信息表字段名说 明类 型长 度可否为空主键account管理员账户varchar2100否是password管理员密码varchar299否否name管理员名称varchar24000否否订单信息表如表3-5所示。表3-5 订单信息表字段名说 明类 型长 度可否为空主键orderno订货编号varchar250否是name会员姓名varchar250否否reallyname真实姓名varchar250否否address订货地址varchar250否否tel联系电话varchar250否否post运送方式varchar250否否3.5 系统详细设计乐淘网上购物系统根据业务内容分为管理员系统、用户登录系统。系统的模块设计是在需求规格说明和系统架构的基础上,通过精化架构、分析用例、设计模块来标识设计元素,发现设计元素的行为细节,精化设计元素的定义,以确保用例实现总是最新的。系统设计是以系统分析阶段的工作为依据,寻求新系统逻辑模型的实现方法,探求建立新系统的过程。系统设计给出了系统分析阶段建设的系统逻辑模型应如何去做和怎样去做的细节。其重点是把系统功能需求转化成系统设计说明。3.5.1 用户模块设计用户模块主要是已注册的用户登录,密码找回;修改密码;网站信息浏览;购买商品;查看订单详情。下面对这些功能,挑选代表性功能进行详细叙述:1会员登录及注册会员登录涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-7所示。MemberLoginFormString:nameString:passwordLoginActionLogoutMemberDaogetMemberInfoByname()图 3-7 会员登录类图会员注册涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-8所示。LoginFormString:nameString:passwordString:reallynameString:professionString:questionString:anwserInt:ageMemberLoginActionMemberDaoaddMember()图 3-8 会员注册类图2会员密码找回会员密码找回涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-9所示。ChangeFormString:nameString:answerString:questionChangeActionMemberDaogetMemberInfoByname()图3-9 会员密码找回类图会员密码修改涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-10所示。Change_pwdFormString:nameString:passwordChange_pwdActionMemberDaoupdateMember()getMemberInfoByname()图3-10 会员密码修改类图(1) Change_pwdForm类 Change_pwdForm是用户修改密码缓存用户信息的Form Bean。(2)Change_pwdAction类Change_pwdAction调用MemberDao中的getMemberInfoByname()获取该用户信息,updateUser()更改用户密码。(3)MemberDao类MemberDao是用户修改信息涉及数据的访问接口,完成用户密码的修改。3生成订单模块订单模块涉及的类,包括Form Bean、Action Bean、数据访问类和持久化类,具体如图3-11所示。OrderInsertFormString:ordernoString:goodnameString:nameString:reallynameString:addressString:telString:postString:priceOrderInsertActionGoodOrderDaoaddGoodsOrder()图3-11 订单模块类图3.5.2 管理员模块设计管理员模块主要进行管理员登录;对用户信息的管理,查询用户信息功能;对商品信息的管理,即增加,删除,更改,查询功能;对订单的信息的管理,即删除,查询功能。下面对这些功能,挑选代表性功能进行详细叙述:1登录功能登录功能涉及的类,包括ManagerForm,ManagerLoginAction,ManagerDao。(1)ManagerForm类ManagerForm是缓存管理员输入数据的Form Bean,其属性与表单中的属性相对应,并提供用于验证表单数据有效性的validate()方法,以及获取和设置属性值的Get()和Set()方法。登录的表单为验证用户名和密码的业务逻辑提供参数。(2)ManagerLoginAction类ManagerLoginAction是涉及的用户请求与业务逻辑之间的适配器,在建立用户请求与业务逻辑之间点对点映射关系的同时,将请求与业务逻辑分离。登录的业务逻辑包括验证用户名和密码。(3)ManagerDao类ManagerDao是涉及数据的访问的类,主要是完成连接数据库,与数据库进行操作,查询数据。2查询商品信息功能查询用户信息功能涉及的类,包括InsertForm,ShowAllGoodsAction,GoodsDao。(1)InsertForm类LoginForm类从数据需求的角度对记录中用户基本信息进行抽象,属性与数据库中的字段一一对应,提供获取和设置属性值的Get和Set方法。一个实例对应于上述表中的一条记录。 (2)ShowAllGoodsAction类ShowAllGoodsAction是涉及的请求与业务逻辑之间的适配器,它在建立用户请求与业务逻辑之间点对点映射关系,将请求与业务逻辑分离。主要调用GoodsDao中的getAllGoodsInfo()方法,对数据进行查询。(3)GoodsDao类GoodsDao是涉及数据的访问的类,主要是完成连接数据库,与数据库进行操作,查询数据。3删除商品信息功能删除用户信息功能涉及的类,包括DeleteGoodsAction,GoodsDao。(1)DeleteGoodsAction类DeleteGoodsAction是在建立用户请求与业务逻辑之间点对点映射关系的同时,将请求与业务逻辑分离。主要调用GoodsDao中的方法,通过参数smallid对数据进行查询后删除。(2)GoodsDao类GoodsDao主要是完成连接数据库,与数据库进行操作,查询数据后删除。4增加商品信息功能增加商品功能涉及的类,包括InsertForm,InsertGoodsAction,GoodsDao。(1)InsertForm类InsertForm对记录中信息进行抽象,其属性与数据库中的字段一一对应。并提供获取和设置属性值的Get和Set方法及用于验证表单数据有效性的validate()方法。(2)InsertGoodsActon类InsertGoodsAction是在建立用户请求与业务逻辑之间点对点映射关系的同时,将请求与业务逻辑分离。主要调用GoodsDao中的insertGoods()方法,通过参数添加进数据库中进行存储。(3)GoodsDao类GoodsDao主要是完成连接数据库,对数据库进行操作,添加数据。5. 修改商品信息功能修改商品信息功能的类,包括UpdateGoodsForm,UpdateGoodsAction,DoUpdateGoodsAction,GoodsDao。(1)UpdateGoodsForm类UpdateGoodsForm用户修改信息缓存用户信息的Form Bean。(2)UpdateGoodsAction UpdateGoodsActionn是涉及的请求与业务逻辑之间的适配器,它在建立用户请求与业务逻辑之间点对点映射关系,将请求与业务逻辑分离。主要调用GoodsDao中的getGoodsInfoBysmallid()方法,通过smallid对一条数据进行查询,装入再调用GoodsDao中的updateGoods()进行数据更新。(3)GoodsDaoGoodsDao连接数据库,对数据库进行操作,对数据进数更新,或从数据库中将数据读取出来。4 乐淘网上购物系统的实现4.1 系统技术实现4.1.1 JSP简介JSP 已发展了十几年了,几个方面都已经很成熟了,尤其是在B/S方面安全性上因为JSP用Java语言作服务器语言,Java最大优点之一就是安全,Java也把这种特点带到JSP上。JSP同样是实现动态网页的一个利器。由于他的脚本语言是Java,所以继承了Java诸多优点。运行速度、运行开销、运行平台、扩展性、安全性、函数支持、厂商支持、对XML的支持等等,ASP都不是JSP的对手。COM组件的复杂性实编程实现有一定的难度。而JavaBeans和Java的结合却是天衣无缝的。4.1.2 B/S 结构概述相对于C/S结构,尽管C/S结构相对于更早的文件服务器来说,有了很大的进步,但与B/S相比,缺点和不足是很明显的。首先,B/S比C/S的维护工作量大大减少了。C/S结构的每一个客户端都必须安装和配置软件。假如一个企业共有50个客户站点使用一套C/S结构的软件,则当这套软件进行了哪怕很微小的改动后(比如增加某个功能),系统维护员都必须进行这样的维护;将服务器更新到最新版本;将客户端原有的软件卸载,再安装新的版本,然后进行设置,最为可怕的是客户端的维护工作必须不折不扣的进行50次。若其中有部分客户端是在另外一个地方,则系统维护员还必须跑到该地方再进行卸载、安装、设置的工作。若某个客户端,忘记进行这样的维护,则该客户端将会碰到版本不一致的问题而无法工作10。而B/S结构,客户端不必安装及维护。其他客户端,只要重新登录系统,使用的就已经是最新版本的软件了。其次,B/S相对C/S能够降低总体拥有成本,C/S软件一般是采用两层结构的。而龙特璐华软件采用的是三层结构。4.1.3 Struts 框架简介Struts是一个基于SunJ2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。其最初萌芽于Craig McClanahan的构思,诞生至今也一年有余了。现在,Struts是Apache软件基金会旗下Jakarta项目组的一部分,由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注11。Struts把Servlet、JSP、自定义标签和信息资源(Message Resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间。 首先事件是指从客户端页面(浏览器)由用户操作触发的事件,Struts使用Action来接受浏览器表单提交的事件,这里使用了Command模式,每个继承Action的子类都必须实现一个方法Execute。在Struts中,实际是一个表单Form对应一个Action类(或Dispatch Action),换一句话说:在Struts中实际是一个表单只能对应一个事件,Struts这种事件方式称为Application Event,Application Event和Component Event相比是一种粗粒度的事件。4.1.4 Oracle简介Oracle的关系数据库是世界第一个支持SQL语言的数据库。Oracle的目标定位于高端工作站以及作为服务器的小型计算机。Oracle的路线同Sun微系统公司类似,都提出了网络计算机的概念。Oracle宣称自己是世界上首家百分之百进行基于互联网的企业软件的软件公司。整个产品线包括:数据库、服务器、企业商务应用程序以及应用程序开发和决策支持工具。Oracle应用产品包括财务、供应链、制造、项目管理、人力资源和市场与销售等150多个模块,荣获多项世界大奖,现已被全球近7600多家企业所采用12。由于在电子商务方面的杰出表现,Oracle公司在美国Mongan Stanley公司最新公布的权威性全球企业1000强中,成为全球第二大独立软件公司和最大的电子商务解决方案供应商。4.2 系统首页实现本页是浏览本站的首页面,在首页面中除了要考虑系统的功能,对于页的布局设计也行重要。在本页中,用户与管理员的登陆及退出的导航在上页,商品按大类别分类在左侧,以及管理员对相关用户,商品及订单的管理都在左侧,整体色调以红色为主。除了购买物品时需要用户注册登录才能使用外,其它的部分都可以供非注册用户查看。但游客及用户没有管理员的权限,不可进行对所有用户,商品,订单信息的管理。主页面如图4-1所示。 图4-1 酒店管理系统前台主页面4.3 会员注册模块的实现注册中心模块完成用户的注册功能,点击“注册”按钮调出用户注册页面,在此页面中,输入相关信息,如会员名称,真实姓名,用户密码,年龄,职业等,点击“注册”完成注册。用户注册页面设计如图4-2所示:图4-2 用户注册页面设计核心代码如下:public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) LoginForm loginForm=(LoginForm) form;MemberDao dao=new MemberDao();Member m=new Member();try BeanUtils.copyProperties(m,loginForm ); catch (IllegalAccessException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (InvocationTargetException e) / TODO Auto-generated catch blocke.printStackTrace();dao.addMember(m);String name=m.getName();request.getSession().setAttribute(name, name);return mapping.findForward(ok);通过调用MemberDao中的addMember()方法,来对会员进行注册。4.4 会员登陆模块的实现4.4.1 会员登陆会员登陆模块实现用户登陆功能,它验证用户提交的用户名和密码是否被授权,并根据访问权限为用户提供相应的业务功能。会员登页面设计如图所示4-3所示。图4-3 会员登陆界面4.4.2 会员密码找回会员密码找回模块实现用户的密码找回功能,当用户不记得自己的密码时,可以通过用户名及验证问题将密码找回。会员密码找回页面设计如图所示4-4,4-5所示。图4-4 会员密码找回界面图4-5 会员密码成功找回界面核心代码如下:public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) ChangeForm changeForm = (ChangeForm) form;/ TODO Auto-generated method stubMemberDao dao=new MemberDao(); String name=changeForm.getName(); String question=changeForm.getQuestion(); String answer=changeForm.getAnswer(); Member m=dao.getMemberInfoByname(name); if(answer.equals(m.getAnswer()|question.equals(m.getQuestion() String pwd=m.getPassword(); request.getSession().setAttribute(name, name); request.setAttribute(pwd, pwd); return mapping.findForward(change_success); else return mapping.findForward(misstake); 通过调用会员名称name到MemberDao中调用getMemberInfoByname()方法,将用户信息暂存在changForm中,然后通过问题和答案的比对,实现密码找回功能。4.4.3 会员密码修改会员密码修改模块实现用户的密码修改功能,当用户将自己丢失的密码找回后,可以对现有的密码进行修改。会员密码修改页面设计如图所示4-6所示。图4-6 会员密码修改界面核心代码如下:public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) Change_pwdForm change_pwdForm = (Change_pwdForm) form; MemberDao dao=new MemberDao(); Member m=dao.getMemberInfoByname(change_pwdForm.getName(); m.setPassword(change_pwdForm.getPassword(); dao.updateMember(m); return mapping.findForward(chang_pwd_s);将修改后的用户名及密码暂存在chang_pwdForm中,通过调用会员名称name到MemberDao中调用getMemberInfoByname()方法,修改会员密码后,在执行updateMember()方法进行更新。实现修改密码功能。4.4.4 生成订单生成订单模块实现会员对商品的购买功能,用户成功登陆后,可以点击购买商品进行商品的购买,就需要生成订单。生成订单页面设计如图所示4-7所示。图4-7 生成订单界面核心代码如下:public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) OrderInsertForm orderInsertForm = (OrderInsertForm) form; if(request.getSession().getAttribute(name)=null)return mapping.findForward(m_misstake);elseGoodorderDao dao=new GoodorderDao(); Goodorder u=new Goodorder();try BeanUtils.copyProperties(u, orderInsertForm); catch (IllegalAccessException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (InvocationTargetException e) / TODO Auto-generated catch blocke.printStackTrace();Member m=new Member();String name=(String)request.getSession().getAttribute(name);orderInsertForm.setName(name);m.setName(orderInsertForm.getName(); u.setMember(m);dao.addGoodsOrder(u); return mapping.findForward(ok);4.5 管理员模块的实现4.5.1 管理员登录此模块实现用户身份验证的功能。在登录模块中,输入用户名及密码,点击提交按钮完成用户身份验证的功能。本模块的页面设计如图4-8所示:图4-8 管理员登陆界面4.5.2 所有商品查询功能此模块实现对所有商品的信息查询功能。管理员成功登录后,模块中,点击所有商品信息实现对所有商品的查询的功能。本模块的页面设计如图4-9所示:图4-9 查询所有商品界面4.5.3 添加商品功能此模块实现对商品的添加功能。管理员成功登录后,查看所有商品信息,点击添加商品信息实现对所有商品的添加的功能。本模块的页面设计如图4-10所示:图4-10 添加商品界面4.5.4 修改商品信息功能此模块实现对商品信息的修改功能。管理员成功登录后,查看所有商品信息,点击添加商品信息实现对所有商品的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 消防安全检查员培训课件
- 医疗器械经理工作汇报
- 东北师范大学民俗馆讲解
- 新旧技术合作协议更替原协议作废确认书
- 节假日租车合同终止及车辆返还标准范本
- 私立幼儿园教师儿童社会实践活动指导聘用合同
- 离婚协议书中双方共同财产分割方案示范
- 离异父母子女抚养费增加及支付条件变更协议
- 离婚子女抚养费支付及探望权调整补充协议
- 夫妻关系修复后再破裂协议书范本
- 2024教科版一年级科学上册全册教案设计
- 2025年体育组织行业研究报告及未来行业发展趋势预测
- 2024年永州市工会社会工作者招聘笔试真题
- 推进文旅医养融合发展的策略及实施路径
- 弹跳的小球教学课件
- 2025年山东快递工程专业职称考试(快递设施设备知识·技术员、助理工程师)历年参考题库含答案详解(5卷)
- 反洗钱身份识别培训课件
- 2025年北京市人文知识竞赛真题
- 山东省烟台市2024-2025学年高一下学期期末学业水平诊断生物试卷(含答案)
- 妊娠与产后甲状腺疾病诊断指南
- 《3-6岁儿童学习与发展指南》健康领域知识测评题库(含答案)
评论
0/150
提交评论