• 1.87 MB
  • 2022-04-29 14:26:24 发布

论文答辩PPT参考5分钟即可

  • 49页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'毕业设计(论文)姓名:李迪迪班级:计算机网络学号:1101020105指导老师:周士印2014/5/151 [摘要]当前,在全球范围内,电子商务网站正在以前所未有的速度迅猛发展,不仅改变着传统的社会生产方式,而且对经济结构的调整产生了极为深刻的影响,成为经济新的增长点。电子商务网不仅是经济全球化的重要表现形式之一,而且已经成为传统产业变革和企业技术跨越的关键推动力。电子商务形式的网上商店具有高效、快捷,信息畅通的特点,还可以很大程度上降低销售成本。因此设计制作电子商务网站是现在网络设计中必不可少的部分。本文着重论述了电子商务网站的实现与设计过程。在系统的设计与开发过程中严格遵守软件工程的规范,详细得从经济技术以及操作方面进行了可行性分析,并且运用软件设计模式,从而减少系统模块间的偶合,力求做到系统的稳定性、可重用性和可扩充性。针对要设计的电子商城网站的购物车模块,基于ASP.NET框架,后台运用SQLSERVER2005数据库。[关键词]电子商务网站ASP.NETSQLSERVER2005数据库电子商城2014/5/152 目录第1章绪论11.1课题研究的背景11.2电子商务网站的发展现状及设计意义11.3研究内容和结构安排2第2章系统开发工具概述42.1系统设计可行性分析42.1.1ASP.NET的新特性42.1.2ASP.NET开发和运行平台52.2SQLSERVER2005数据库概述52.3Dreamweaver6第3章系统具体设计过程73.1总体结构设计73.2模块功能设计73.2.1销售模块73.2.2系统管理模块93.3数据库设计93.3.1概念结构设计103.3.2逻辑结构设计113.3.3数据表详细设计122014/5/153 第4章电子商务网站具体页面设计实现154.1系统公共类的实现154.1.1数据库操作类的实现154.1.2购物车类的实现164.2网站主页的实现184.3销售模块的实现204.3.1销售模块基本框架的实现204.3.2销售模块特价商品功能的实现214.3.3销售模块购物车功能的实现224.4系统管理模块的实现234.4.1系统登录功能的实现244.4.2商品管理功能的实现244.4.3会员管理功能的实现254.5实现效果评价26结论28致谢292014/5/154 第1章绪论1.1课题研究的背景当前,在全球范围内,电子商城网站正在以前所未有的速度迅猛发展,不仅改变着传统的社会生产方式,而且对经济结构的调整产生了极为深刻的影响,成为经济新的增长点。电子商城网不仅是经济全球化的重要表现形式之一,而且已经成为传统产业变革和企业技术跨越的关键推动力。电子商务被看作是一种现代化的商业和行政作业方法,这种方法改善产品和服务质量、提高服务传递速度,实现跨领域商业活动,满足政府组织、厂商和消费者降低成本的需求,通过计算机网络加快信息交流以支持决策。电子商务的内涵和外延也在不断充实和扩展。近年来,世界范围内Internet/Intranet网络环境的基本形成,使得基于Internet环境的系统的设计与开发成为重要方向,特别是B/S结构的应用越来越广泛。1.2电子商务网站的发展现状及设计意义随着中国市场经济的日趋成熟和计算机技术和网络技术的发展,人们对信息的获知程度和广度都提出了更高的要求。网上购物这种新的商业运营模式就被越来越多的商家运用到竞争中去,并得到了大多数客户的认可,这种基于浏览器、服务器实现的购物方式已经初具规模,一些在线购物网站的成立,改变了人们已往传统的购物观念。2014/5/155 图1.1是根据CNNIC(中国互联网络信息中心)公布的中国B2C电子商务发展报告来进一步分析目前的网上购物的现状(主要引用其中的关于进行网络购物原因的分析图表)。50.0%40.0%30.0%10.0%0.0%20.0%46.7%44.2%33.4%32.6%29.7%节省时间操作方便节省费用出于好奇寻找稀有商品图1.1网络购物原因调查图表从图1.1可以看出网上购物选择节约时间和操作方便的分别占46.7%和44.2%,这说明随着生活节奏的加快,人们越来越希望拥有简单快捷的购物方式。因此,一个允许买家在家里就可以浏览商家发布的所有商品信息的在线购物系统将大大减轻商家的工作量、降低投资成本。本系统是结合当前传统购物方式消耗大量人力物力的弊端、以当前市场上已经存在的B2C、C2C等在线购物网站为模型,开发出适合于大部分中小型企业以及个体用户的网上购物系统。2014/5/156 1.3研究内容和结构安排本系统是在大学期间学习数据库相关知识的基础上,熟悉VisualStudio2005开发环境并能熟练使用C#编程语言的同时,运用软件工程理论知识,开发出的一套基于ASP.NET的在线购物系统。在系统开发的过程中能够应用所学的知识,并促进作者更深入的学习C#的相关特性、积累更多SQLServer2005的相关应用知识,这样不仅能将所学的书面知识和实际应用结合起来达到学以致用的目的,同时也为以后的工作和学习积累经验。本网站主要实现如下内容:(1)客户的注册与登录;(2)商品信息的管理(商品的添加,删除和修改)与浏览;(3)订单的管理(下订单,订单修改,订单删除,订单确认及查看以往订单)(4)会员信息的管理(会员信息的添加,修改和删除)本文的结构安排如下:2014/5/157 第1章引言——主要阐述了课题的研究背景及意义,目前的研究的基本概况,并介绍了本文的研究内容及结构安排。第2章系统方案分析和设计——介绍了电子商务网站的基本方案设计和具体情况分析。第3章开发工具介绍——本章首先介绍了ASP.NET技术,接着对SQLSERVER2005数据库进行了相关介绍,之后对系统的运行环境TOMCAT和JDK做了简单的介绍。第4章系统的总体设计——在对系统进行架构设计后,本章首先对系统流程进行了详细设计,最后对数据库进行了概念设计和逻辑设计。第5章系统的具体实现最后总结与展望——总结了本文的主要工作,并对进一步的研究工作进行了展望。2014/5/158 第2章系统开发工具概述本网站是基于ASP.NET的设计方案,使用SQLServer2005作为数据库。使用JDBC与数据库进行交互,表示层由ASP.NET实现来开发的电子商务网站。其开发工具为VisualStudio2005,DreamweaverMX2004和FireworksMX2004,运行和调试环境为IIS6.0。下面就相关技术,工具,运行环境做简单介绍。2.1ASP.NET技术简介2.1.1ASP.NET的新特性ASP.NET是微软.NET技术中最引人注目的网站开发工具,它的推出和使用将对开发优质网站提供广泛的技术支持。它是一个建立服务器端Web应用程序的框架。ASP.NET是ASP的后继版本,它向前兼容ASP,但它又不仅仅是ASP的简单升级。ASP.NET和ASP相比具有许多优势。(1)语言独立性,它支持功能强大的VisualBasic.NET、C#,JavaScript仍可用,凡是可以编译成MISL(MicrosoftIntermediateLanguage,是介于程序语言和机器码之间的一种语言,具有和程序语言无关的特性)的程序语言ASP.NET都支2014/5/159 持,ASP.NET为Web应用程序提供了一个真正的中间语言的执行框架。ASP缺省只支持JScript和VBScript,若要使用其他脚本语言,必须安装相应的脚本引擎。(2)代码更易于编写、结构更清晰,程序代码与用户界面接口彻底分开,使程序的可读性更强。在ASP中,几乎必须为每件事情写代码,而且将代码、HTML、文本、对象说明等混在一起,很难重复使用这些代码。而在ASP.NET中引入了一种真正的组件模式,只需写很少的代码,并且在很多情况下,可以完全不写任何代码。(3)执行效率更高。ASP.NET是由支持它的服务器上的.NETFramework负责编译执行,当服务器接收到一个ASP.NET页面时,如果这是对该页面创建或修改后的第一次请求,.NETFramework就会把该页面中的程序语言内容先编译成MSIL,ASP.NET的执行代码以独立线程的方式一直存在于服务器内存中。以后对ASP.NET页面提出请求时,不需要重新编译,直到该页面被修改或Web应用程序重启动(见图1.3)。而ASP是解释性脚本语言,每次都需要重新编译。2014/5/1510 ASP.NET网页第一次执行MSIL机器码高速缓存第二次执行图1.3ASP.NET网页运行模式整体比较如下:ASP.NET网页第二次被浏览速度>ASP网页浏览速度>ASP.NET网页第一次被浏览速度。ASP.NET还有网页服务结构不同、数据处理模式的不同、简化组件部署和组态的操作、更强的安全机制、调试较为便利等诸多优点。通过上面的比较分析可以看出,ASP.NET的性能在许多方面要远远超越了ASP,利用ASP.NET技术实现一个交互式的动态Web页是比较简单。而且随着.NET技术的日益成熟,相信ASP.NET的应用会越来越普及。2014/5/1511 2.1.2ASP.NET开发和运行平台如果只运行ASP.NET应用程序,可以安装.NETFrameworkRedist软件包。如果要开发、部署和运行ASP.NET应用程序,需要安装.NETASP.NETPremiumEdition、.NETFrameworkSDK或者VisualStudio.NET中的任何一个。.NETFrameworkSDKBeta2支持以下操作系统:WindowXP、Windows2000、WindowsNT4(带ServicePack6a),并要求InternetExplorer版本在5.01或5.01以上。要求系统安装MicrosoftDataAccessComponent2.6,推荐安装2.7版本ASP.NET还需要IIS5.0或IIS4.0(带NT4ServicePack6a)。IIS已集成在NT/Windows2000操作系统中,一般不必另外安装。2.2SQLSERVER2005数据库概述SQLServer2005是Microsoft公司推出的大型数据库管理系统,它建立在成熟而强大的关系型基础上,可以很好的支持客户机/服务器网络模式,能够满足各种类型的企事业单位对构建网络数据库的需求。它具有易用性、可扩展性、可靠性等特点,是目前使用最为广泛、普及率最高的数据库管理系统之一。2014/5/1512 在高性能和企业级可伸缩性领域,SQLServer2005设计成利用Windows2005对更多处理器、更大的系统内存的支持,最终达到支持64位硬件平台。在不断提升可用性的努力过程中,SQLServer2005采用Windows2005四路群集,提供了大大改进的群集支持。SQLServer7.0已经在可管理性和易用性方面在行业内领先,SQLServer2005通过与Windows2005活动目录紧密结合进一步改进了这些功能。而且,SQLServer2005还包含对现有管理工具和实用程序的重大改进,并引入更具自我调节和自我管理的引擎功能。SQLServer2005按照设计可以为部署和维护强大的、易于管理、支持商务活动的Web站点提供最好的性能,这些站点可以从事商家和商家之间或商家与客户之间的交易。在寻求一个支持您的电子商务解决方案的数据库时,需要考虑的项目包括:可用性、性能、可管理性和价格。2014/5/1513 2.3DreamweaverDreamweaver是MICROSOFT公司推出的网页制作工具,它功能强大、操作方便,易学易用,是目前最为流行的网页制作与站点管理工具。DreamweaverMX不仅保持了开发过程轻松及页面效果完美的制作风格,且工作界面清新自然,并对相关面板、图标等进行归整,使用户用起来更为顺手,开发更为简便。DreamweaverMX是功能更强大的用于可视化设计与管理网页和网站的专业级HTML编辑器。无论是在可视化编辑环境中进行开发,还是习惯于书写HTML代码,DreamweaverMX都能令用户很快上手,并且提供实用的工具来增加他们的网页设计经验,使他们在网页设计中更加得心应手。DreamweaverMX的可视化不只是体现在其灵活的界面和直观的开发环境上,面板的组合、行为、样式表、时间轴,以及定制并拓展Dreamweaver等强大的编辑的功能与完美的扩展性都是同类其他软件所不可比拟的。Dreamweaver是一个很酷的网页设计软件,它包括可视化编辑、HTML代码编辑的软件包,并支持ActiveX、JavaScript、Java、Flash、ShockWave等特性,而且它还能通过拖拽从头到尾制作动态的HTML动画,支持动态HTML(DynamicHTML)的设计,使得页面没有plug-in也能够在Netscape和IE4.0浏览器中正确地显示页面的动画。同时它还提供了自动更新页面信息的功能。它采用图形化的界面以及“所见即所得(WYSIWYG)”的方式编写网页,大大提高了专业网页制作人员的工作效率,使得开发WEB更加轻松自如。2014/5/1514 第3章系统具体设计过程本章节的总体目标是将上一章节需求分析阶段得到的目标系统的逻辑模型,变换为目标系统的物理模型,具体将从系统的结构设计和数据库的设计两方面进行讲解。简单的说就是根据上一章节中需求分析的”做什么”,确定系统应该”怎么做”。3.1总体结构设计系统结构和功能是系统设计的核心部分,通过系统结构图可以清楚的看出整个系统的结构。针对每个结构模块分别做分析,为以后的设计和实现打下基础。根据功能需求,本系统总体上分销售模块和系统管理模块,销售模块功能供购买者使用,系统管理模块功能供商家管理员使用。系统总体结构如图3.1所示。在线购物系统销售模块系统管理模块图3.1系统总体结构图在线购物系统销售模块系统管理模块图3.1系统总体结构图2014/5/1515 3.2模块功能设计本系统分销售模块和系统管理模块,每个模块又有若干个子模块构成,其中销售模块主要包括:商品展台、购物车、会员管理、新闻管理、注销登录等子模块。系统管理模块主要包括:商品管理、订单管理、会员管理、新闻管理、注销登录等子模块。具体的模块功能设计如下。3.2.1销售模块系统销售模块主要让商品购买者使用,可以进行各类商品信息的浏览和订购功能,系统销售模块的结构如图3.2所示。图3.2销售模块功能结构图销售模块商品展台新闻购物车会员管理新品展示特价商品销售排行榜选购商品清空购物车查看购物车会员注册会员登录动态新闻展示商品详细信息新闻相信信息注销登录索回密码2014/5/1516 系统销售模块具体功能设计如下:1、商品展示功能:包括新上架商品展示、特价商品展示、销售排行榜、分类商品信息展示和被选定的商品详细信息展示。每类商品都是根据数据库中商品信息表中的特定字段进行划分的,如特价商品是根据降价幅度是否大于百分之二十、新品是根据上架时间是否在三天或一周之内、排行榜是根据购物者下订单的多少。购物者可通过此模块实现浏览商品信息的目的。2、购物车功能:包括选定商品至购物车,查看、清空购物车;在购买者提交购物车(提交订单)之前,所有已选定的商品信息是存放在购物车实现类文件的DataSet数据集中。当提交购物车之后,该数据集中的信息就被写入数据库。在用户未登陆之前,不能够使用购物车提交功能,如果选择了购物,那么系统会提示用户登录。3、会员管理功能:包括了注册、登录、索回密码等功能。对于注册功能,需要用户输入的信息取决于数据库中会员信息数据表中的字段;并通过各类型的验证控件实现校验。登录和索回密码功能所需的数据也是从会员信息数据表中得到。4、新闻管理功能:将数据库中的新闻信息数据表中的信息动态绑定至网站首页,同时允许用户单击了某条特定的新闻标题后查看相应新闻的详细信息。5、注销登录功能:保证在注册会员注销后清空其登录时候保持的信息,如会话信息、购物车信息等。2014/5/1517 3.2.2系统管理模块系统管理模块的功能由发布商品的商家使用,可以进行注册会员、商品信息、订单、动态新闻、在线调查等内容的管理,系统管理模块的结构如图3-3所示。图3.3系统管理模块功能结构图系统管理模块商品管理新闻管理订单管理会员管理添加商品编辑商品信息查询订单执行订单添加会员信息删除会员增加新闻条目删除过时新闻注销登录删除商品信息系统登录2014/5/1518 系统管理模块具体功能设计如下:1、商品管理功能:具体包括对商品信息进行添加、编辑、删除等操作。对于新上架的商品,可以上传图片供购买者查看;对于已录入数据库的商品信息,可进行编辑和删除等操作。2、订单管理功能:具体包括对订单信息进行查看、执行等操作。3、会员管理功能:具体包括对已注册会员信息进行编辑、删除等操作,同时可手动添加会员信息。4、新闻管理功能:可实现对新闻的增加、删除、编辑等功能。5、注销登录功能:可实现让商家管理员退出后删除所有登录期间存储的信息,如Session信息。3.3数据库设计系统分析结束后进入设计阶段,抽象地分析数据,理解数据之间的关系,建立E-R模型,然后对数据库进行概念结构设计和逻辑结构设计。由于SQLServer2000能够以极高的效率完成各种数据库查询,并能方便的使用存储过程,同时它的图形化用户界面,使系统管理和数据库管理更加直观、简单。另外由于对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。所以本系统采用了SQLServer2000进行数据库的存储管理与维护。2014/5/1519 3.3.1概念结构设计将需求分析得到的用户需求抽象为信息结构即概念结构设计,这一步是数据库设计的关键。一般采用自底向上的方法进行数据抽象和结构设计。在本系统中涉及到的实体如下所示:1.管理员(管理员ID、登录账号、登录密码、权限级别)2.会员(会员ID、登录名、真实姓名、登录密码、所在城市、住址、邮政编码、证件号码、证件类型、电话号码、手机号码、邮箱、密码提示问题、问题答案)3.商品(商品ID,所属类别、商品名、商品介绍、单位,原价、现价、市场价格、购买次数、库存、图片、输入时间、最近更新时间、是否新品)4.订单(订单ID、订单下达者、付款方式、送货方式、订单下达日期、执行状态、订单描述)5.新闻(新闻ID、新闻标题、新闻内容、录入时间)6.在线调查(投票ID、投票标题、投票起止日期、A答案及其选票数)7.订单明细信息(订单详细信息ID,所属的订单号,对应的商品ID,对应商品价格、对应商品数量)8.商品大类信息(商品大类ID,商品大类名称)9.商品小类信息(商品小类ID,商品小类名称,所属商品大类ID)2014/5/1520 在该系统中,各个实体的关系为:一个管理员可同时管理会员、商品、订单、新闻、在线调查、商品类别等多个实体对象,并且它们之间都是一对多的关系;一个会员实体可以下达多条订单信息实体,而一条订单信息又可对应多条订单明细信息实体;一条订单明细包括一个商品实体;一个商品大类信息拥有若干商品小类信息实体,而一个商品小类实体信息又拥有多个商品实体。各个实体之间的关系如图3.4所示。图3.4系统E-R图商品拥有会员管理员商品大类信息订单商品小类信息拥有下达订单明细对应包括管理管理新闻管理在线调查管理1NNNN1111N1N1NN111管理1N2014/5/1521 3.3.2逻辑结构设计系统数据库设计的优劣直接影响到以后网站与数据连接的速度和更新查询的复杂度。本节介绍本系统基于关系数据库的数据库总体结构设计及数据表的设计。本系统的数据库设计是在系统功能分析后,依据系统的需求目标而做出的设计。本系统为基于ASP.NET的在线购物系统,所以最重要的数据表就是存放商品详细信息数据表、注册会员信息表、商品类别信息表、订单信息表等,表3.1为本系统所涉及到的数据表。表3.1数据表列表表名主要属性My_Goods商品信息(商品ID,商品名,所属类别,价格,库存,购买次数,图片……)My_Member会员信息(会员ID,登录名,登录密码,邮箱,密码提示问题,问题答案……)My_Manager管理员信息(管理员ID,登录账号,登录密码,权限级别)My_SuperType商品大类信息(商品大类ID,商品大类名称)My_SubType商品小类信息(商品小类ID,商品小类名称,所属商品大类ID)My_Order订单信息(订单ID,订单下达者,付款方式、送货方式、执行状态……)My_Order_Details订单详细信息(订单详细信息ID,所属的订单号,对应的商品ID……)My_Vote投票信息(投票ID,投票标题,投票起止日期,A答案及其选票数……)My_BBS新闻信息(新闻ID,新闻标题,新闻内容,录入时间)2014/5/1522 3.3.3数据表详细设计各个数据表之间主键和外键之间存在某种关系,他们的对应关系一般是商品ID、会员ID、类别ID、订单ID、管理员ID等各个元素的主键相链接的,关系图如图3.5所示。图3.5数据关系图2014/5/1523 本系统中共涉及以商品信息表和商品类别表为中心的9张数据关系表。下面列出了本数据库中主要涉及到的数据表:1.商品信息数据表(My_Goods):该表中存放系统销售模块商品的所有信息,该表字段及其类型定义如表3.2所示。表3.2商品信息表(My_Goods)字段名字段类型可否为空描述IDbigintNotNull商品ID(主键)typeIDintNotNull所属商品类别ID(外键)goodsNamevarchar(200)NotNull商品名称introducetextNull商品描述unitVarchar(6)NotNull商品单位pricefloatNotNull原价nowPricefloatNotNull现价marketPricefloatNotNull市场价格buyTimesintNotNull购买次数(默认值为0)stocksintNotNull库存数量pictureVarchar(100)Null商品图片(默认值是一张已存在的图片路径)INTimedatetimeNotNull商品录入时间updateTimedatetimeNull商品最近更新时间newGoodsintNotNull是否新货(0:不是;1:新货。默认值为0)2014/5/1524 2.会员信息数据表(My_Member):该表中存放在系统中注册的会员的所有信息,该表字段及其类型定义如表3.3所示。表3.3会员信息表(My_Member)字段名字段类型可否为空解释IDintNotNull会员ID(主键)userNameVarchar(20)NotNull登录名称trueNameVarchar(20)Null会员真实姓名passWordVarchar(20)NotNull登录密码cityVarchar(20)Null所在城市addressVarchar(100)Null所在地址postcodeVarchar(6)Null邮政编码cardNOVarchar(24)Null证件号码cardTypeVarchar(20)Null证件类型telVarchar(20)Null联系电话cellphoneVarchar(20)Null手机号码emailVarchar(20)NotNull邮箱地址questionVarchar(100)NotNull密码提示问题answerVarchar(100)NotNull问题答案2014/5/1525 3.管理员信息数据表(My_Manager):该表中存放在系统管理模块中合法管理员的所有信息,该表字段及其类型定义如表3-4所示。表3.4管理员信息表(My_Manager)字段名字段类型可否为空解释IDintNotNull管理员IDmanagerintNotNull管理员登录账号PWDnvarchar(50)NotNull管理员登录密码managerNameintNull管理员姓名rankintNotNull管理员级别regTimedatetimeNotNull注册时间(默认为当前时间)2014/5/1526 4.商品大类信息数据表(My_SuperType):该表中存放将商品按类别划分之后,商品大类的所有信息,该表字段及其类型定义如表3.5所示。表3.5商品大类信息表(My_SuperType)字段名字段类型可否为空解释IDintNotNull商品大类IDTypeNameVarchar(50)NotNull商品大类名称ID其中商品小类信息数据表(My_SubType)、订单信息数据表(My_Order)、订单详细信息数据表(My_Order_Details)、投票信息数据表(My_Vote)、新闻信息数据表(My_BBS)等由于篇幅原因就不一一介绍。2014/5/1527 第4章电子商务网站具体页面设计实现总体设计阶段完成了软件的结构设计,划分了模块,并规定了各个模块的功能及他们之间的联系。在此之后,按软件开发工程化的观点,应进入系统的详细设计阶段,即系统实现。该阶段的根本目标是确定应该怎样实现所要求的系统,给出软件模块结构中各个模块的内部过程描述。本章将分模块对系统的实现给予介绍。4.1系统公共类的实现本节介绍系统使用的公共类,如数据库访问通用类(用于返回数据集、对象、受影响行数等)、用于完成购物功能的类等。编写公共类可以在其他页面中直接调用公共类的方法、属性,避免重复代码的编写,有利于系统代码的维护和日后系统的升级。4.1.1数据库操作类的实现数据库操作类用于根据系统功能的要求返回一个数据集、一个object对象(即:返回首行首列)、受影响行数(适合于对数据库的增删改操作)、SqlDataReader等。实现这些功能的是四个静态函数,其中每个静态函数又根据是否传入SqlParameter参数进行了重载。由于它们都是静态函数,而静态函数成员不能作用于具体的实例,所以在调用这些方法的时候可以直接用类名加函数名即可。下面仅列出返回数据集方法的实现算法,其他方法的实现逻辑大致相同:2014/5/1528 publicclassDataBase{声明一个数据库连接对象dbStrCon;publicstaticDataSetReDataSet(传入的Sql语句参数FillSql,传入的Sql参数列表commandParameters){利用在web.config配置文件中定义的全局变量为dbStrCon新分配一个数据库连接对象;if(数据库连接处于关闭状态){打开数据库连接dbStrCon;}2014/5/1529 声明一个数据库命令对象cmd;指定cmd的数据库连接对象为dbStrCon,命令文本为FillSql,命令类型为文本型;if(commandParameters不为空){foreach(声明一个临时Sql参数incommandParameters){为Sql命令对象添加commandParameters中的所有Sql参数}}声明一个Sql数据适配器ada,并指定其Sql命令为cmd;声明一个DataSet数据集dsResul;利用数据适配器ada填充数据集dsResul清空Sql命令cmd里面的所有Sql参数;if(数据库连接处于打开状态){关闭数据库连接dbStrCon;}返回执行查询后的数据集dsResult;}2014/5/1530 publicstaticDataSetReDataSet(传入的Sql语句参数FillSql){为dbStrCon新分配一个数据库连接对象;if(数据库连接处于关闭状态){打开数据库连接dbStrCon;}声明一个数据适配器ada,并指定其Sql语句为FillSql,数据库连接对象为dbStrCon;声明一个DataSet数据集dsResul;利用数据适配器ada填充数据集dsResulif(数据库连接处于打开状态){关闭数据库连接dbStrCon;}返回执行查询后的数据集dsResult;}}2014/5/1531 4.1.2购物车类的实现在线购物网站中购买者可以在不同的页面进行购物,而在不同页面所选购的货物最终都是放到同一个购物车里。所以要编写一个购物车类进行处理用户的购物过程,这样可以节省不必要的重复编写代码的时间,有利于维护和功能上的扩充。当用户在购物页面点击了”购买”按钮之后,将该商品的ID传入类中进行处理,根据用户单击的次数和商品的ID确定要购买的数量和商品,同样可以直接在购物车页面中编辑所需货物的数量。系统将这些信息使用Hashtable类进行存储,在用户提交购物车信息之前,Hashtable中的数据将暂时保存在Session会话变量中。在提交购物车之后,将写入数据库,实现过程的伪代码如下所示:publicclassShopCar:System.Web.UI.Page{声明一个购物的DataSet数据集goodSet;声明一个静态的String对象hh;publicvoidgodataset(stringid)//向Hashtable中添加购商品id和数量{if(如果Session会话中变量bus的值为空){声明一个哈希表变量ht;往ht中加入一个”键为id、值为1”的键值对;将ht赋值给Session会话中的变量bus;调用dafill()方法将商品信息添加到ht中;2014/5/1532 }else{定义一个哈希表ht,并将其赋值为Session会话中的变量bus;if(哈希表ht中键为id的键值对为空){将ht中键为id的键值对的值设定为1;}else{将ht中键为id的键值对的值+1}将ht赋值给Session会话中的变量bus;调用dafill()方法将商品信息添加到ht中;}}publicvoiddafill(Hashtableht)//查询商品信息添加到数据集中{清空购物的DataSet数据集goodSet;foreach(字典键值对deinht)2014/5/1533 {将hh赋值为字典键值对de中键;声明一个数据适配器datap,并指定其Sql语句为”从商品信息表中查出”,数据库连接对象为根据web.config文件中的连接字符串新建的数据库连接对象;if(如果数据适配器datap不为空){用datap填充DataSet数据集goodSet;}}}}4.2网站主页的实现本文设计的电子商城为文静电子商城网站,首先介绍网站首页的设计,通过前台首页可以跳转实现系统的前台功能,首页就是一个载体,大多数网页功能模块都会在首页体现出来,可以完成的功能都可以通过页面进入,例如商品信息都在首页可以查询到。网站首页的截图如下:2014/5/1534 2014/5/1535 4.3销售模块的实现系统销售模块主要包括:商品展台、购物车、会员管理、新闻管理、注销登录等子模块。在本节中将以首页、购物车和特价商品的展示为例介绍系统销售模块各个子模块的实现过程。4.3.1销售模块基本框架的实现本系统采用户控件来保持每个页面风格的一致性,其中销售模块首页布局如图4.2所示。2014/5/1536 图5.2销售模块首页界面图2014/5/1537 首页的顶端导航条部分,左侧登录界面、销售排行、动态新闻部分,右侧商品分类导航条、在线调查、广告招商位部分,以及底端的版权信息部分分别是四个不同的用户控件。下面以右侧的用户控件right.ascx为例论述一下其使用方法:用户控件里面的所有需要从数据库动态读取信息的显示控件的数据绑定代码全部放在相应的用户控件后台代码中,例如right.ascx中商品分类信息导航树的伪代码如下:构造从商品大类信息表中检索所有记录的Sql语句supertype;构造从商品小类信息表中检索所有记录的Sql语句subtype;定义DataSet数据集dssuper,赋值为根据supertype调用公共数据库操作类中静态函数后返回的数据集;定义DataSet数据集dssub,赋值为根据subtype调用公共数据库操作类中静态函数后返回的数据集;定义DataRow数据行rows存放dssuper数据集的首行;定义DataRow数据行subrows存放dssub数据集的首行;if(当前页面是第一次加载){foreach(数据行rowinrows){声明一个树节点nd,将其Text属性设置为数据行row中字段名为typename的列,值设置为数据行row中字段名为id的列;2014/5/1538 将nd加到导航树的节点集中;foreach(数据行subrowinsubrows){声明一个树节点subnd,将其Text属性设置为数据行subrow中字段名为typename的列,值设置为数据行subrow中字段名为id的列;if(subrow["supertype"].ToString()==row["id"].ToString()){将subnd加到父节点的节点集中去;}}}}4.3.2销售模块特价商品功能的实现运行网站的主页,可以看到四条特价商品的信息,单击”More…”按钮可以进入到特价商品网页,该页中包括商品的图片、名称、原价、现价、市场价格、库存数量等信息。单击”购买”按钮可以将该商品自动添加到购物车中去。另外可通过单击”查看详细信息...”按钮进入相应商品的详细信息显示页面。特价商品模块在网站首页的设计效果如图4.3所示。2014/5/1539 图4.3销售模块特价商品展示界面图在该模块中,要实现的最主要功能是在用户点击了特定商品的”查看详细信息”按钮后,进入相应商品的详细信息显示页面。这就要用到了数据显示控件DataList中的项模板,同时要用到服务器控件的CommandName和CommandArgument属性。当在页面中单击了LinkButton的时候,激发了一个CommandEvent事件,并产生了该事件类对应的参数列表:CommandEventArgs,它有两个公共属性,CommandName(用来获取命令的名称)和CommandArgument(用来获取命令的参数)。二者相互关联。该功能的具体实现方法如下:">2014/5/1540 查看详细信息..同时在后台需要添加相应DataList控件的ItemCommand响应代码:protectedvoidDataListSpecial_ItemCommand(objectsource,DataListCommandEventArgse){if(e.CommandName.Equals("CheckDetails")){stringid=DataListSpecial.DataKeys[e.Item.ItemIndex].ToString();Response.Redirect("goodsdetail.aspx?id="+id.ToString());}}4.3.3销售模块购物车功能的实现购物车如同生活中用到的购物清单,通过它可以清晰的知道已购的商品名称、数量、价格等信息,当用户以会员身份登陆后,单击商品中的”购买”按钮,就可以将商品信息添加到购物车中去,购物车中需要存储所有已选购商品的ID号、商品名称、数量和单价等信息。购物车根据用户单击”购买”按钮的次数或者提交购物车信息之前手动修改的数量来确定购买商品的数量。购物车页面设计效果如图4.4所示。2014/5/1541 图4.4销售模块购物车截面图在本模块中主要是通过DataList控件来显示商品已选购信息的,通过在DataList控件的项模板中添加表格来控制购物车显示的内容,同时在后台代码中为DataList控件的ItemDataBound事件手动添加响应代码,用来计算各种商品的合计金额和购买商品的总金额,并在DataList控件中使用FindControl方法查找DataList控件中的显示控件显示信息。核心代码如下:if(row["id"].ToString()==((Label)e.Item.FindControl("id")).Text.ToString()){((Label)e.Item.FindControl("count")).Text=((Hashtable)(Session["bus"]))[row["id"].ToString()].ToString();2014/5/1542 4.4系统管理模块的实现系统管理模块主要包括:商品管理、订单管理、会员管理、新闻管理、注销登录等子模块。在本节中将以系统登录、商品管理和会员管理为例介绍系统管理模块各个子模块的实现过程。4.4.1系统登录功能的实现为了系统的安全性,系统管理模块必须由成功输入管理员信息的用户才能进入,同时在管理员成功登录后将其登录信息存入Session会话变量。同时在系统管理模块的非登录页面,当页面第一次加载的时候判断Session中是否存在管理员的登录信息,这样就可防止用户通过在地址栏中直接键入系统管理页面的地址、绕过登录页面直接进入系统管理模块。系统登录页面的设计如图4.5所示。图4.5系统管理模块登陆界面图本模块的实现过程中加入了随机验证码,这样就能进一步提高系统的安全性,防止非法用户采用暴力破解软件去试各种各样的密码,因为随机验证码生成的图片只能通过肉眼识别。2014/5/1543 4.4.2商品管理功能的实现在线购物系统中,对于商品信息的管理是系统管理模块中最主要的子模块。一个好的在线购物系统必须要有一个强大的商品管理模块,主要实现对商品信息的管理,包括分页显示商品信息、添加商品信息、修改商品信息和删除商品信息等功能。下面以添加商品信息为例介绍本模块的实现过程,系统管理模块添加商品信息页面的设计如图4.6所示。图4.6系统管理模块添加商品界面图该模块中关键的设计有两部分:一是商品类别信息二级联动,当管理员选择商品大类信息的时候,隶属于该商品大类信息信息的商品小类信息应该实现绑定;二是上传商品图片的时候如何将存放在本地磁盘的图片的地址转化为系统的相对地址。图片上传的核心算法如下(其中fileUp是图片上传控件):2014/5/1544 If(fileUp控件中上传文件的文件名不为空){获取上传文件的全部路径filePath;获取上传文件的扩展名fileExtName;}try{获取系统中存放商品图片的文件夹对应的本地绝对路径mPath;获取上传文件的文件名mFileName;调用fileUp.PostedFile.SaveAs()方法保存上传图片文件;}catch(异常类err){输出异常信息;}4.4.3会员管理功能的实现在线购物系统中,对会员信息的有效管理是保证会员数据不丢失、维护会员合法权益的重要保证。本系统中会员管理功能包括增加会员和删除会员信息。下面以增加会员信息为例说明会员管理功能的实现过程,增加会员信息页面的设计如图4.7所示。2014/5/1545 图4.7系统管理模块增加会员界面图在本模块中,用到最多的是验证控件:RequiredFieldValidator(实现验证用户是否输入,用于用户必填的信息字段)、CompareValidator(实现验证两次输入是否相同,用于保证安全性的二次确认密码)、RegularExpressionValidator(实现对用户输入的格式进行校验,用于具有特定格式的字段信息的输入)。这些控件是实现会员信息正确录入的保证。其中,验证Email地址是否合法的用户自定义控件的正则表达式为:”w+([-+."]w+)*@w+([-.]w+)*.w+([-.]w+)*”;验证电话号码或手机号码输入是否正确的用户自定义控件的正则表达式为:”(d{3,4}[-]d{7,8})|(d{11})”;“2014/5/1546 4.5实现效果评价本系统的最初设计思路是:将系统分为销售模块和系统管理模块。其中销售模块的功能由购买者使用,可以进行各类商品信息(特价商品、新品、分类商品)的浏览。如果是注册会员那么可以选购商品到购物车并实现结算,如果没有检索到相应的产品也可以使用下达订单的功能。系统管理模块的功能由发布商品的商家使用,可以实现注册会员管理、商品信息管理、订单管理、动态新闻管理、当前有效在线调查信息管理等内容,同时可以处理用户下达的新订单。根据目前系统完成的情况,大部分的功能均已实现。但是部分功能尚待修改,比如销售模块商品检索功能,目前在销售模块中,浏览者可以通过商品类别进行所需商品的检索。同时在系统的开发过程中,又根据自己的理解以及借鉴其他同类系统的功能,为该系统增加了部分必要的功能,例如销售模块中增加了在线投票的功能。系统开发过程中遇到的问题主要有:动态页面中加入静态的控件,导致不能成功获取所需的信息;忽略了每次向服务器提交请求后客户端页面都将重新加载的情况,以致无法将预期的数据提交到服务器。解决方法是通过在页面后台代码中加入断点、单步调试最终找出了问题的所在,也就是在该问题的解决过程中,作者认识到了调试方法的重要性。2014/5/1547 结论本文着重论述了电子商务网站的实现与设计过程。在系统的设计与开发过程中严格遵守软件工程的规范,详细得从经济技术以及操作方面进行了可行性分析,并且运用软件设计模式,从而减少系统模块间的偶合,力求做到系统的稳定性、可重用性和可扩充性。针对要设计的电子商城网站的购物车模块,基于ASP.NET框架,后台运用SQLSERVER2005数据库。此电子商务网站主要实现电子商城的购物车模块,实现了用户浏览页面商品和用户登录注册等功能,用户把商品放入购物车,并且对购物车里的商品进行修改,增添和删除购物车的商品,以及改变购物车里商品的数量,最后确定后递交订单,管理员根据订单以及客户货款的情况来确定是否发货,然后在后台进行填写已经发货的情况,以及管理员的后台管理,包括对注册用户的帐号的管理情况,譬如修改、删除等等。通过本次课程设计,遇到了许多问题,也提高了自己的实践能力回顾起此次设计,至今我仍感慨颇多,科技日益更新,我们要跟上时代的步伐就要掌握好知识,努力向上。2014/5/1548 致谢毕业设计是对我们知识运用能力的一次全面考核,也是对我们进行科学研究基本功的训练,培养我们综合运用所学知识独立的分析问题和解决问题的能力,为以后撰写专业学术论文和工作打下良好的基础。本篇论文虽然凝聚着自己的汗水,但却不是个人智慧的产品,没有导师的指引和帮助,没有父母和朋友的帮助和支持,我在大学的学术成就肯定会大打折扣。本次设计能够顺利完成,首先我要感谢我的母校,是他为我提供了学习知识的沃土,使我们在这里茁壮成长;其次,我要感谢学校里的老师,他们不紧教会我专业方面的知识,而且教会我做人的道理;尤其要感谢在本次设计中给我大力支持和帮助的指导老师,他总是认真的给我修改开题报告和论文,使我能够更好的完成开题报告和论文;还要感谢我的同学们,他们热心的帮助,使我感到来自兄弟姐妹的情谊;最后还要感谢相关资料的编著者和给予我们支持的社会各界人士,感谢您们为我们提供了一个良好的环境,使本次设计圆满完成。再次由衷的感谢答辩组的各位老师对学生的指导和教诲,我也在努力积蓄着力量,尽自己的微薄之力回报母校的培育之情,争取使自己的人生对社会产生些许积极的价值!2014/5/1549'