软件工程综合实践论文格式参考.doc_第1页
软件工程综合实践论文格式参考.doc_第2页
软件工程综合实践论文格式参考.doc_第3页
软件工程综合实践论文格式参考.doc_第4页
软件工程综合实践论文格式参考.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录摘 要III第一章概 述41.1网上商城的历史41.2网上商城现状41.3网上商城系统开发任务4第二章 系统需求分析72.1系统功能概述72.2功能需求建模82.3数据分析建模8第三章 系统设计93.1概要设计93.2详细设计93.2.1顾客注册、登录模块93.2.2商品和特价商品检索、浏览模块103.2.3购物车模块103.2.4会员反馈信息、留言模块113.2.5管理员登录模块113.2.6商品和特价商品管理模块123.2.7订单管理模块133.3数据库设计143.3.1概念数据模型设计143.3.2数据表设计15第四章 系统实现184.1 实现技术简介184.1.1 Struts简介184.1.2 Hibernate框架概述194.1.3 Ajax技术概述20第五章 小结与展望215.1 小结215.2 展望21参考文献22摘 要摘要100-150字,写清楚做什么,怎么做,做的结果。突出个人完成的功能部分。随着Internet技术和企业信息化建设的发展,传统实体店也被搬到了网上方便大家购物,形成个各色各样的网上商城。本文主要针对以上需求开发一个简单的网上商城系统。该系统主要以Struts和Hibernate框架为基础,并使用Ajax的技术实现异步通信的机制。首先介绍了系统的功能需求,其次对系统重要模块和数据结构做了详细设计,然后介绍了系统实现,最后介绍了对系统的小结和展望。该系统界面友好,基本实现了顾客注册、登录,对商品浏览和和购买,管理员可以对顾客、商品和订单进行管理,本系统有一定的实际应用价值。通过Struts+Hibernate架构的结合,使系统具有更高的开发效率,及代码重用性高、易于维护,为将来功能扩展及升级提供了方便。关键字:网上商城系统,Struts框架,Hibernate框架,Ajax技术,管理员功能 22第一章 概 述第一章 概述 简要描述所做系统的背景,突出每个人自己的功能部分,1-2页即可。1.1网上商城的历史上世纪90年代以来,随着网络、通信和信息技术的突破性进展,Internet在全球爆炸性增长并迅速普及。在这一前提下,电子商务应运而生了。电子商务是基于互联网、以交易双方为主体、以银行电子支付和结算为手段、以客户数据为依托的全新的商务模式,它可以使商家与供应商更紧密地联系起来,更快地满足客户需求,也可以让商家在全球范围内选择最佳供应商,在全球市场上销售产品。网上订购系统作为B2B,B2C(Business to Customer,即企业对消费者),C2C(Customer to Customer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的无纸化交换。著名网络经济调查评论家Robert Metcalfe声称:“互联网的价值等于(与之相联结的)网点数量的平方。” 1.2网上商城现状在欧美等一些发达国家,网上购物发展迅猛,世界一流零售商纷纷进入网络经商行列,网购已成为一种时尚。在我国购物网从无到有仅仅几年,2008年7月24日,中国互联网络信息中心(CNNIC)在京发布第22次中国互联网络发展状况统计报告。报告显示,截至2008年6月底,我国网民数量达到了2.53亿,首次大幅度超过美国,跃居世界第一位。CNNIC的报告显示,人们的网上行为也开始与实际生活靠近,网络购物、网上银行等实用性应用走俏。数据显示,我国网络购物使用率为25%,用户人数达到6329万人,半年内用户量增加了1688万人,其中最为普及的城市是上海,使用率达到45.2%。网上支付和网上银行则极大地推动了网络购物的发展,网民对二者的使用率分别达到22.5%和23.4%,尤其是网上支付,半年用户增量达到2379万人,半年增长率达到71.7%。这说明在中国发展网上购物具有良好的群众基础,网上购物方式日趋被大家所接受。1.3网上商城系统开发任务本系统以Struts框架和Hibernate框架为基础进行应用开发,并加以Ajax的技术实现异步通信的机制。Struts和Hibernate为本网上商城系统的开发提供了现成的通用的框架,Struts框架提供全套MVC模式的代码,极大地节省了时间;Hibernate框架完成数据持久化的重任,将数据库的操作提升到一个面向对象的层面上来。将Ajax技术运用到Web应用中来,相当于用户和服务器之间加了一个中间层。将这些技术整合起来的时候,使该系统在健壮性、代码重用和可扩充方面上了一个新的台阶,有利于系统的维护和升级。第二章第二章 系统需求分析第二章描述系统功能,用分层的数据流图(也可用面向对象的用例图)表示!注意每一个图都必须有相应的解释!数据分析部分包括系统的ER图和相关解释说明。2.1系统功能概述本系统主要分为顾客部分和管理员部分,顾客部分主要实现的功能针对顾客使用,有顾客的注册和登录功能、查看商品信息功能、搜索商品的功能、购物车功能、反馈意见或留言功能;管理员部分主要由商城的管理员使用,分别为实现商品管理员管理商品信息及特价商品信息、订单管理员管理订单信息、会员管理员管理顾客的情况及产看顾客的反馈信息、系统管理员可以对管理员进行管理。这里的功能主要按照使用者不同进行分配。1) 顾客部分l 顾客部分主要包括以下几个方面,顾客的注册登录,顾客查看商品信息,搜索商品信息,查看购物车,删除购物车,修改购物车,确认下订单操作,查看留言反馈信息,增加留言信息,修改顾客自己的信息等。这里的使用对象主要是顾客。l 首先顾客可以方便地注册与登录。若还未注册的顾客只能进行商品的查看,不能购物;未注册的顾客可进入注册页面进行注册,然后可以选择不同的会员级别,有不同的打折率。但是若顾客不符合要求或是有重大表现,后台的管理员可以对其会员级别进行调整。l 顾客可以灵活地检索所需的商品信息及了解特价商品信息。可采用关键字搜索。l 顾客可以方便地查看详细的商品资料。l 顾客可管理自己的购物车(包括添加或删除选购商品、修改商品购买数量及在线下订单等操作)。l 顾客还可以反馈自己的意见或留言。2) 管理员部分l 管理员部分,管理员必须登录才能进行管理,管理员根据不同的权限可以进行相应的操作。l 商品管理员可以方便地管理商品及特价商品信息(新增、删除、修改商品信息及特价商品信息)。l 订单管理员可以查看订单、发货与缺货处理。l 会员管理员可以查看顾客的注册信息以及调整会员的级别,还可以查看顾客的反馈信息及具体的处理情况,进行回复。l 系统管理员可以进行管理员的管理(新增、删除、修改管理员信息)2.2功能需求建模此处给出DFD或用例图及其解释说明2.3数据分析建模此处给出ER图或类图及其解释说明第三章 系统设计第三章描述系统设计,可以分为概要设计、详细设计和数据库设计。交代清楚模块划分(用SC图表示),然后按照模块逐个介绍详细设计(SC图、流程图或活动图、状态图,等等),每个图都必须有相应的解释、说明。数据库设计部分必须包括数据表结构和相应说明!3.1概要设计本系统一共划分11个功能模块:顾客注册、登录模块,商品检索、浏览模块,特价商品检索、浏览模块,购物车模块,会员反馈信息、留言模块,管理员登录模块,商品管理模块,订单管理模块,会员管理模块,系统管理员管理模块,退出系统模块。以下给出SC图及相关解释3.2详细设计给出3-5个模块详细设计,可画流程图或时序图或NS图。以下选取了系统几个主要模块进行了详细设计具体如下3.2.1顾客注册、登录模块顾客只有通过注册才能成为会员,会员只有登录后才能进行管理自己的购物车、订单及留言等操作。图3-1顾客注册、登录模块图控制层Struts的实现:顾客将注册的表单提交之后,reg.jsp表单的内容由Struts自动封装到memberFrom对象中,并送交Validator进行表单有效性验证,如果验证失败则返回reg.jsp要求顾客重新填写,验证成功就将memberForm对象提交给MemAction的reg方法进行处理,处理完后将提示信息返回reg.jsp并完成注册。会员登录时,首先在default.jsp中登录,提交之后,登录表单的内筒有Struts自动封装到memLoginForm对象中,并提交到Validator进行表单有效性验证,如果验证失败则返回default.jsp要求重新登录,验证成功就将memLoginForm对象提交给LoginAction的login方法进行处理,处理完成后将处理结果返回default.jsp并完成登录。3.2.2商品和特价商品检索、浏览模块顾客与会员可以根据不同的商品种类浏览商品信息,也可以输入关键字进行商品检索。控制层Struts的实现:顾客请求均通过直接调用MerAction类的相应方法进行处理,MerAction类中的方法在收到请求后,根据具体的请求调用MerService接口中的相应DAO方法完成数据库的访问,并将检索得到的结果返回给MerAction,MerAction将最终的处理结果保存到request对象中,由相应的JSP页面展示出来。图3-2商品和特价商品检索、浏览模块图3.2.3购物车模块会员输入账号与密码登录后便可进行购物车的管理了。图3-3购物车模块图3.2.4会员反馈信息、留言模块顾客在未成功登录时,只能查看现有的留言及回复信息,会员成功登录后菜能进行留言。图3-4会员反馈信息、留言模块图3.2.5管理员登录模块后台管理员按职责与权限的不同共分为4种,共用同一个后台登录模块,系统根据输入的账号和密码来确定管理员的身份,以决定该管理员的操作权限。图3-5管理员登录模块图3.2.6商品和特价商品管理模块商品管理员成功登录后,才能进行商品的管理操作。图3-6商品和特价商品管模块图此模块的页面包括有浏览商品分类页面adminCate.jsp,新增商品分类页面adminAddCate.jsp,修改商品分类页面adminModiCate.jsp,浏览商品页面adminMer.jsp,新增商品页面adminAddMer.jsp,修改商品页面adminModiMer.jsp,查看商品页面adminViewMer.jsp,浏览特价商品页面adminSMer.jsp,新增特价商品页面adminAddSMer.jsp,修改特价商品页面adminModiSMer.jsp,查看特价商品页面adminViewSMer.jsp。3.2.7订单管理模块图3-7订单管模块图订单是由会员在购物后,成功提交订单后产生的,从下单到结单中间还要经过订单受理和处理的过程。订单管理员成功登录后,才能进行订单的管理操作。会员管理是由管理员登录后对会员信息参看和修改,实现过程与订单管理模块类似。3.3数据库设计3.3.1概念数据模型设计图4-11 系统概念数据模型图l 会员级别与注册会员为一对多关联:一个会员级别可以有多个注册会员,而一个会员只能属于一中会员级别。l 商品类别与商品为一对多关联:一个商品类别可以有多个商品,而一个商品只能属于一种商品类别。l 注册会员与订单为一对多关联:一个会员可以有多张订单,而一张订单只能属于一个会员。l 购物车与商品为多对多关联:一个购物车可以有多个商品,而一个商品也可以放入多个购物车,在数据库的物理实现上,通过连接表“购物车商品选购表”实现购物车与商品的多对多关联。l 订单与购物车为一对一关联:一张订单与一个下订单的购物车相对应。l 注册会员与留言为一对多关联:一个会员可以有多个留言,而一个留言只能属于一个会员。l 系统管理员与留言为一对多关联:一个管理员可以回复多个留言,而一个留言只能由一个管理员回复。3.3.2数据表设计表3-1 会员级别表(MemberLevel)字段名称数据类型主键是否允许为空描述IDint会员级别的ID号LevelNamechar(20)级别名称Favourableint优惠百分比表3-2 注册会员表(Member)字段名称数据类型主键是否允许为空描述IDint会员的ID号Memberlevelint外键会员级别的IDLoginNamechar(12)登录账号LoginPwdchar (12)登录密码MemberNamechar (20)真实姓名Phonechar (15)联系电话Addressnvarchar(100)联系地址Zipchar (10)邮政编码RegDatedatetime注册日期LastDatedatetime最近登录日期LoginTimesint登录次数EMailnvarchar(100)电子邮箱表3-3 商品类别表(Category)字段名称数据类型主键是否允许为空描述IDint商品类别的ID号CateNamenchar(40)类别名称CateDesctext类别描述表3-4 商品表(Merchandise)字段名称数据类型主键是否允许为空描述IDint商品的ID号Categoryint外键商品类别的IDMerNamenchar(40)商品名称Pricedecimal(8,2)商品价格SPricedecimal(8,2)商品特价MerModelnchar(40)商品型号Picturenvarchar(100)商品图片MerDesctext商品描述Manufacturernchar(60)生产厂家LeaveFactoryDatedatetime生产日期Specialint有无特价(0:无,1:有)表3-5 购物车表(Cart)字段名称数据类型主键是否允许为空描述IDint购物车的ID号Memberint外键会员IDMoneydecimal(9,2)总金额CartStatusint购物车状态表3-6 购物车商品选购表(CartSelectedMer)字段名称数据类型主键是否允许为空描述IDint选购ID号Cartint外键购物车IDMerchandiseint外键商品IDNumberint商品数量Pricedecimal(8,2)商品价格Moneydecimal(9,2)金额表3-7 订单表(Orders)字段名称数据类型主键是否允许为空描述IDint订单ID号Memberint外键会员IDCartint外键购物车IDOrderNOnchar(20)订单编号OrderDatedatetime订单日期OrderStatusint订单状态表3-8 系统管理员表(Admin)字段名称数据类型主键是否允许为空描述IDint系统管理员ID号AdminTypeint管理员类型AdminNamechar(12)管理员真实姓名LoginNamechar(12)管理员登录账号LoginPwdchar(12)管理员登录密码(管理员类型分为4种:1商品管理员,2订单管理员,3会员管理员,4系统管理员)表3-9 留言表(LeaveWord)字段名称数据类型主键是否允许为空描述IDint留言ID号Memberint外键会员IDAdminint外键管理员IDTitlenchar(40)留言标题Contenttext留言内容LeaveDatedatetime留言日期AnswerContenttext回复内容AnswerDatedatetime回复日期第四章 系统实现4.1 实现技术简介开发技术 任选一些技术做简要介绍,2页纸即可,不允许超过3页。可从网络或书上节选,但不允许雷同!4.1.1 Struts简介Struts是一个“Web应用框架”。Struts框架是Java和Apache软件基金下Jakarta项目的一个开放式源代码框架,为Web应用程序开发人员提供很多便利。其中,它基于MVC模式的设计思想,使代码结构化,条理化,便于维护;很好地实现了业务逻辑与用户界面的分离,将模型和视图从底层事务处理分割开来,不仅使每个模块都能独立完成单一的功能,而且使系统更加易于开发、维护和更新,同时,它提供了大量自定义标记库,可以在JSP页面中分离显示逻辑与静态HTML,使页面代码更清晰,可读性提高,从而简化J2EE的Web应用开发。它可以被分成6个基本步骤。1. JSP view发起一个以.do为后缀的请求;2. ActionForm封装用户请求数据,同时它可以提供验证数据的功能;3. ActionServlet(由Servlet技术实现)接受这个请求,它根据struts-config.xml文件来得到处理这个请求的Action对象,并将请求发给这个Action对象;4. Action对象接受这个请求,从ActionForm中获得数据,之后处理这些数据,并调用model(JavaBean/EJB)去处理这个请求,将处理结果返回给Action- Servlet;5. ActionServlet根据Action的返回结果中的信息,决定将处理结果返回给对应的view;6. View得到处理结果,并将它显示给用户。图2-1 Struts工作流程图14.1.2 Hibernate框架概述Hibernate是一个面向Java环境的对象/关系数据库映射工具。对象/关系数据库映射(object/relational mapping(ORM)这个术语表示一种技术,用来把数据对象模型表示的对象映射到基于SQL的关系模型数据结构中去。Hibernate不仅仅管理Java类到数据库表的映射,还提供数据查询和获取数据的方法,可以大幅度减少人工使用SQL和JDBC处理数据的时间。Hibenrate对每一种数据库有对应的Dialect进行操作优化,从而提高它在各种情况下的效率。支持的数据库有Oracle, DB2, MySQL, Sybase, InterBase, MicosoftSQLServer以及HypersonicSQL。它可以和多种Web服务器或者应用服务器良好集成,使得开发者可以根据不同的需要来选择Web服务器。图2-2 Hibernate 高层概览图【1】4.1.3 Ajax技术概述Ajax是Asynchronous JavaScript and XML的缩写,是由HTML、JavaScript、DHTML和DOM技术组成。这一核方法改变了以往的Web界面的交互性,使网络界面更符合人性化。Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。在创建Web站点时,在客户端执行屏幕更新为用户提供了很大的灵活性。Ajax的工作原理相当于在用户和服务器之间加了个中间层,使用户操作与服务器响应异步化。这样把以前的一些服

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论