浅析网上书店系统 用ASP.NET在网络上架构一个电子书城_第1页
浅析网上书店系统 用ASP.NET在网络上架构一个电子书城_第2页
浅析网上书店系统 用ASP.NET在网络上架构一个电子书城_第3页
浅析网上书店系统 用ASP.NET在网络上架构一个电子书城_第4页
浅析网上书店系统 用ASP.NET在网络上架构一个电子书城_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文)PAGEPAGE28摘要本设计尝试用ASP.NET在网络上架构一个电子书城,以使每一位顾客不用出门在家里就能够通过上网来轻松购书。论文首先较为详尽地介绍了面向对象分析与设计的有关概念与技术,系统中所用到的开发技术ASP.NET以及ADO.NET的特点、结构框架以及使用方法。接着对书店系统的可行性进行了分析,然后对系统的设计思想、设计目标与系统的整体结构进行了明确的规划。最后对系统的主要页面、数据库、应用程序的设计与实现作了较为详细的讲解。本电子书城系统是在VisualStudio.Net平台上运用ASP.NET技术来实现页面。用c#为主要编程语言。提高了程序的效率。用SQLserver2005建立数据库,保证数据的一致性和安全性。整个系统分为用户模块和管理员模块。我设计的是用户模块,其主要功能有用户注册和登录,分类查找,图书浏览,书籍搜索,购买流程等。关键词:SQL2005,ASP.NET,ADO.NetAbstractThisdesigntrytouseASP.NETtoarchitectane-bookcityonthenetwork,eachcustomerdonotneedtogooutandcanbuybookeasilyontheInternetinthehome.ThethesisfirstmakeanintroductionoftheconceptionandtechniqueofobjectorientedprogrammingThedevelopmenttechniqueinthesystemsuchastheframeandoperatingmethodoftheASP.NETandADO.NET.afterthatitcarriedonwiththethoughtofdevelopingthetargetandtheentirestructureofthedesign.Attheendisthemainpage,databaseofsystem,designandrealizationofapplicationprogramindetails.MicrosoftVisualStudio2005isusedasamajordevelopmentenvironment,andCsharpisexploitedasthemainprogramminglanguageleadingtoahighefficiencyontheproceduresoftheimplementation.IuseASP.NETtoformthepage,builddatabasewithSQLServer2005.toensuredatasecurityandconsistency.Itisconsistofusermoduleandadministratormodule.Themainfunctionis:registerandlogionofon-lineuser.Searchingbookbyclassification.bookscanning,bookpurchasingandsoon..

Keyword:SQL2005,ASP.NET,ADO.NET目录TOC\o"1-2"\h\z\u第1章引言 11.1网上书店开发简介 11.2本课题的研究意义 31.3主要研究工作 3第二章基础知识介绍 52.1B/S结构技术发展简述 52.2.Asp.Net 62.3ADO.NET 72.4面向对象的开发过程 82.5开发工具的选择 92.6IIS的配置 9第3章需求分析 103.1系统的功能要求 103.2运行要求 103.3系统的数据要求 11第4章总体设计 134.1总体设计思路 134.2功能模块 14第5章详细设计 185.1数据库设计 185.2用户模块 235.3用户注册模块 285.4用户登录模块 305.5图书搜索页面 325.6购物车模块 325.7管理员界面 35第6章系统测试 37参考文献 40致谢 41附录 42附录一英文原文 42附录二中文译文 51第1章引言随着社会经济和Web技术的发展,人们不再满足于仅能浏览信息的静态网页,更多的时候需要能与同时上网的互联网用户进行交流和发表自己的意见见解,这样,能提供后台数据库的管理和控制等服务的动态网站有了诞生的必要。近年来,随着互联网在中国的迅速发展,网上B2B、B2C这一利用网络信息进行的购物、买卖方式得到迅速发展。2003年5月10日淘宝网建立。淘宝网目前业务跨越C2C(个人对个人)、B2C(商家对个人)两大部分,至今成为中国乃至亚洲到世界最具影响力的网络购物网站,以及今年2月分。中国最大搜索引擎—百度推出了自己的B2B网站“百度有啊”。全国各地纷纷建立起自己的网络购物网络,网上购物呈星火燎原之势,迅速地出现在全国各地。特别是在北京、上海以及广东等网络比较成熟的省市,网上购物已经有了较大的市场。实际上,网上购物与在真实的书店是相同的,不同的是前者是买卖双方通过一个网络虚拟的平台来实现。网站一般为购物者准备了发表评论联系卖家的功能,也在很明显的地方试用了人性化的导航标示,使得没有太多网络知识的人们,也能准确地找到所需,购物者可以用多种方式查询书店发布的书籍信息,书店管理员也运用了最可能的详细介绍来描述书籍。1.1网上书店开发简介动态网站开发技术:C#.NET使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为"ZeroLocalAdministration"的哲学观念使C#.NET的基于应用的开发更加具体和快捷。一个C#.NET的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。多处理器环境的可靠性C#.NET已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的C#.NET应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。自定义性和可扩展性C#.NET设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。这与原来的包含关系不同,C#.NET可以加入自己定义的如何组件。网站程序的开发从来没有这么简单过。安全性基于Windows认证技术和每应用程序配置,你可以确定你的原程序时绝对安全的。C#.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有ASP应用程序中逐渐添加C#.NET功能,随时增强ASP应用程序的功能。C#.NET是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行。将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何C#.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。C#.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。当创建C#.NET应用程序时,开发人员可以使用Web窗体或XMLWebservices,或以他们认为合适的任何方式进行组合。每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义。1.2本课题的研究意义Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:利用Internet的技术和协议,建立各种企业内部网Intranet,企业外部网Extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。而在实际的生活中,这种方案已经被广泛的运用到了实际的商业活动中了,人们将这种交易模式称为:电子商务。当今比较流行的网上购物系统国外有“卓越”,国内有“当当”。它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。设计和完成一个电子商务网站的,将会牵涉到许多技术上的问题,如:动态网页制作技术的,后台数据库的设计和管理,通过实际的制作个网站,可以避免纸上谈兵,在实践中掌握上述技术的使用。1.3主要研究工作网上书店一般来说包括了两个大的对象:买书者和卖书者。普通Internet个人用户可以使用该系统浏览图书,可以注册为“书店会员”,进行购书操作,个人信息管理、发表留言、管理购物车、查看订单等;管理员可以使用该系统发布书籍、修改书籍信息、管理用户、管理留言板、添加新书、发布书讯、管理订单。“在线留言系统”应实现客户在该网站上进行的询问等信息的提交,保存和显示。其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。网络书店主要在以下几个方面体现其优越性:1、先进的购书流程。通过新书上架,销售排行榜,模糊搜索,分类查询等多种方式方便会员浏览图书信息,各个模块都可以实现对购物车的查询,进入购物车进行购书修改,生成订单后,结账进入库存。2、科学的书店管理模式。系统采用多种营销的主动推荐方式,客户结合灵活多样的高级检索,能轻松的找到所需要书籍信息;通过客户意见反馈系统,书店可以随时把握客户的各种新的需求和及时与客户进行网上互动交流;通过完善的信息发布系统,客户可以及时得到书店最新动态和新闻,掌握行业动向;后台结构化管理模式,涵盖了图书资料编辑、用户管理、订单管理、库存管理、基础信息管理等等,为书店的电子化管理提供了一套良好的管理模式。3、人性化的操作界面。4、完善的安全机制:独立的密码校验功能,确保用户和书店的数据有较好的安全性第二章基础知识介绍2.1B/S结构技术发展简述随着IT技术的高速发展,互联网几乎已经渗透到人们生活的每一个角落。而网络技术与数据库技术的应用,则大大改变的人们的学习、生活与工作的方式,提高并丰富了人类生活。互联网的发展应用促使网页技术的产生。但在不久后,人们对静态页面并不满足,随后出现了采用CGI(CommonGatewayInterface通用网关接口)和ISAPI(InternetServerApplicationProgramInterface互联网服务器应用程序接口)来编写网页,但它们的编程比较复杂,用Perl或者是VC进行编写,将HTML标识嵌入代码中,维护相当困难。此后,随着技术日新月异的发展,相继出现了ASP,PHP,JSP等网站开发技术,它们给网站开发带来了一阵狂潮。ASP是一个Web服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的Web服务应用程序,ASP支持VBScript,JavaScript等多种脚本语言。PHP是一种跨平台的服务器端嵌入式脚本语言。其大量地借用C,Java和Perl语言的语法,并耦合PHP自身的特性,使Web开发者能够快速地生成动态页面,PHP是完全免费的,而且可以不受限制地获得源代码,甚至可以按用户需要进行个性化设计。JSP是Sun公司推出的新一代网站开发语言,具有很强的多平台支持和极大的伸缩能力,JSP可在Serverlet和JavaBean的支持下,建立功能强大的Web应用程序。在推出ASP之后,微软于1998年又发布了ASP2.0,其与ASP1.0的主要区别是ASP1.0外部的组件需要实例化。在这之后,Microsoft又推出了ASP.Net,它并不是ASP的简单升级,而是全新的一个动态网页实现体系。ASP.Net是微软发展的新的体系结构.NET的一部分,其策略是将互联网本身作为构建新一代操作系统的基础,对互联网和操作系统的设计思想进行合理延伸,这样开发将可创建出摆脱设备硬件束缚的应用程序,轻松实现互联网连接。2.2.Asp.NetA之三层WEB结构及其优点:三层模式是在两层模式的基础上,增加了新的一级。这种模式在逻辑上将应用功能分为三层:客户显示层、业务逻辑层、数据层。客户显示层是为客户提供应用服务的图形界面,有助于用户理解和高效的定位应用服务,负责处理用户的输入和向用户的输出,但并不负责解释其含义(出于效率的考虑,它可能在向上传输用户输入前进行合法性验证),这一层通常用前端工具(VB,VC,ASP等)开发;业务逻辑层位于显示层和数据层之间,专门为实现企业的业务逻辑提供了一个明确的层次,在这个层次封装了与系统关联的应用模型,并把用户表示层和数据库代码分开。其主要功能是执行应用策略和封装应用模式,并将封装的模式呈现给客户应用程序,它是上下两层的纽带,它建立实际的数据库连接,根据用户的请求生成SQL语句检索或更新数据库,并把结果返回给客户端,这一层通常以动态链接库的形式存在并注册到服务器的注册簿(Registry)中,它与客户端通讯的接口符合某一特定的组件标准(如COM,CORBA),可以用任何支持这种标准的工具开发;数据层是三层模式中最底层,他用来定义、维护、访问和更新数据并管理和满足应用服务对数据的请求。三层模式的主要优点为:①良好的灵活性和可扩展性。②可共享性。③较好的安全性。④增强了企业对象的重复可用性。⑤三层模式成为真正意义上的“瘦客户端”,从而具备了很高的稳定性、延展性和执行校率。⑥三层模式可以将服务集中在一起管理,统一服务于客户端,从而具备了良好的容错能力和负载平衡能力。图1-1三层模式架构图ASP.Net的运用可以轻松地使用近年流行的三层结构模式开发WEB站点或基于B/S结构的应用程序。它可以使程序具有更好的扩展性,灵活性,安全性,平台无关性以及可维护性。ASP.Net的三层结构开发方法思想与Java类似:Java中的三层架构为前端的HTML,JSP,Serverlet,中间层为JavaBean,EJB,后面为数据器库服务器。而在ASP.Net中,前端为HTML,asp,aspx等,中间层为扩展名是.vb,.cs等文件编译而成的.dll控件,后面为数据库服务器。多层结构的应用正是在对C/S结构的总结基础上产生的,并且也已经扩展到了B/S应用开发领域。2.3ADO.NETADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为DataProviders,并且通常是以与之交互的协议和数据源的类型来命名的。2.4面向对象的开发过程面向对象的软件开发和相应的面向对象的问题求解是当今计算机技术发展的重要成果和趋势之一,C#是一种面向对象的语言。面向对象编程具备了几个优点,比如:代码维护方便、可扩展性好、支持代码重用技术等等。这些优点是过程编程语言所不具备的。下面我们就来谈谈面向对象技术的这些优点。(1)可管理性维护简单(2)模块化 (3)可扩充性(4)代码重用可重用性是面向对象软件开发的一个核心思路.面向对象程序设计的抽象,封装,继承,多态的四大特点都无一例外,或多或少的围绕着可重用性这个核心并为之服务。可重用性体现在两个方面:(1)开发的类可以被别人以及别的项目使用。(2)由于可以继承,因此可以实现代码级的重用。2.5开发工具的选择在开发工具上,我选择VisualStudio.NET。VisualStudio.NET是一套完整的开发工具,用于生成ASPWeb应用程序、XMLWebservices、桌面应用程序和移动应用程序。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.NETFramework的功能,此框架提供对简化ASPWeb应用程序和XMLWebservices开发的关键技术的访问。2.6IIS的配置IIS相对于PWS来说,需要更多的设置,因此在进行管理设置之前,首先要进入管理界面。建立一个虚拟目录。程序所需要的、所用到的数据、和资料都放在一个文件夹之下,这样,有利于进行数据的调用和使用。比如,资料文件夹在E:盘的“wujinzhi/MyBookShop”这个文件夹中保存着,在Web服务下建立一个名为“aspx”虚拟目录,而“MyBookShop”这个文件夹就是虚拟目录“aspx”下的文件。然后,再回到计算机的桌面上来,右键单击“我的电脑”,出现下拉菜单,选择“管理”就可以对所要进行管理的文件进行管理了。第3章需求分析3.1系统的功能要求网上书店的开发主要需要完成的任务有:前台系统:会员登录模块:两个部分组成,一是新用户的注册,将信息存入数据库的过程,二是会员的登录。商品展示模块:三个核心部分:一是商品的展示,二是存放选购产品的购物袋,三是交易数据的储存。用户还可对商品进行查询,直接找到所需的商品。浏览当前所购的商品。后台系统:管理员模块:一是管理员登录,二图书的管理,三是图书类别的管理,四是所有订单的浏览,同时也可以对商品的查询和单条订单的查询。3.2运行要求本网站开发基本所需工具有:IIS,c#,ASP.Net,IE,ActiveServerPage.SQLServer2005,VBSript,JSCript。该系统运行时所处的环境要求在Windows操作系统、Unix及Linux等开发环境中。在软件方面需要.Net、HTML等的支持,采用SQLServer2005数据库系统。3.3系统的数据要求可行性研究阶段产生的文档,特别是数据流图,是需求分析的出发点。数据流图中已经分出系统必须完成的许多具体功能,在需求分析阶段系统分析员将仔细研究这些功能并进一步将它们具体化。在这个阶段结束时交出的文档中应该包括详细的数据流图,数据字典。需求分析的任务还不是确定“网上书店”这样完成它的工作,而仅仅是确定“网上书店”必须完成哪些工作,也就是对目标“网上书店”提出完整,准确,清晰,具体的要求。数据字典名称:用户信息表定义:保存用户的各种信息描述:用户=ID号+作者+姓名+密码+注册时期+城市等位置:sqlserver2005本地服务器css数据库user中名称:产品信息表定义:保存图书的各种信息描述:产品=ID号+名称+作者+装帧+出版日期+详细介绍+出版社等位置:sqlserver2005本地服务器css数据库product中名称:订单信息表定义:保存用户订单的信息描述:订单=编辑编号+用户姓名+日期+图书编号+收货人+地址等位置:sqlserver2005本地服务器css数据库orders中名称:送货汇款方式信息表定义:保存图书购买后的送货汇款的各种信息描述:方式=编号+送货/汇款方式名称+价钱+送货/汇款方式选择等位置:sqlserver2005本地服务器css数据库delivery中注册查询书籍注册查询书籍购书送货用户登录浏览结算用户信息表产品信息表订单信息表送货信息表管理员用户管理图书管理订单管理送货管理图3-1数据流图第4章总体设计4.1总体设计思路概要设计说明书是为说明如何解决网上书店开发系统的初步设计过程,本系统面向的对象是所有在线的网上用户,目的是让用户了解本系统如何更直接、更方便的去浏览,去实现购物时所必须要做的流程,实现网上书店员购书的整个过程。并不是一个活动对应一个页面,要使整个系统运行起来还需要一些支持的页面。事实上,为了使逻辑和便于管理和修改,也为了避免出现各种微小错误,尽量将各个功能分割开来,写成不同的页面,因此在最后完成的系统中还有很多支持页面。图4-1网上书店的总体模块设计网上书店系统的特点是利用Brower/Server结构,实现整个内部的信息化管理。这种系统的优势在于系统简单、功能强大、扩展性良好以及跨地域操作等性能。Client/Server模式与Brower/Server模式是现在比较流行的两种数据库应用模式,单独应用任一种模式都将受其自身的弱点限制。Crower/Server模式主要是以局域网为基础的环境下应用开发出来的,它受到地域的限制。而Brower/Server模式通过Internet进行通信,可以不受地域的限制,但是它不能够进行联机事物处理,并且在大量数据处理的情况下速度较慢。对于本系统,其功能目标是要实现包括在线浏览图书欲购买图书的信息资源共享、各种交流活动以及发现不同用户的权限控制。由于本系统数据操作量不大,因此采用Brower/Server结构来进行设计是合理可行的。在权限控制上,动态的c#.net脚本具有良好的效率和安全性。随着电子商务的推广,网站竞争的越来越激烈,对链接结构设计的要求已经不仅仅局限于可以方便快速的浏览,更加注重个性化和相关性4.2功能模块1.图书浏览及搜索模块在线用户应该可以浏览各种图书,应可以根据需要搜索所需的图书,并查看图书的具体信息2.用户注册及登录模块用户登录,首先要有一个提供用户登录的表单。用户登录的表单应该嵌入整体的结构当中。在实际的应用中,可以这样设计,如果用户没有登录,则在主页中显示用户登录的选项,用户登录后,则可隐藏用户登录的选项而代之以用户的基本信息。3.购物车模块购物车具体的实现可采用这种形式:定义一个购物车的类(Class)。(1)列出商品的列表,使用户能够自由选择所需要的商品。(2)当用户在点击“添加到购物车”的链接时,执行如下功能:检查用户购物车类是否存在。如不存在,则建立,将购物车对象加入用户对象中;在有用户购物车类存在的情况下,检查该类中是否有该商品。如存在,则商品数量相应加1;如没有该商品,则将该商品添加到该类中。。订单生成模块用户在购物车结算后,应生成相应的订单,由用户或网站管理员查看并处理相应的信息。在动态网站的建设中我们采用了后台数据库与前台相连接的技术实现了动态网页的定期更新,主页面中可以看到“登录书斋”连接按钮,点击可以进入登陆页面,如果输入用户名、密码正确可以进入后台管理系统。不正确则会提示:您的输入有误!对与后台管理这一块,其安全性必须是有一定的高度,这样对于那些目的不明或是黑客来说,可以起到足够的遏制作用,一定程度上增强了该系统的安全性,也能使系统的可用性时间延长适当的时间。对于前台来说,设计初衷和理念中是以简洁大方为主线,进入后台管理我们可以实现对用户的管理、共享资源的管理等等操作。可以进行实时自动更新等功能,实现用户信息的个人定制4.管理员模块管理员模块是同组同学所做是系统的后台图书管理与订单审核的重要模块(1)查看图书信息(2)新建图书类别;新书入库;(3)书籍分类(4)订单管理(5)用户信息管理5.数据库连接模块设计数据库连接模块的思想是面向对象的封装思想。把数据库的连接操作封装到DB类中,使在编写业务逻辑是不用重复的编写连接数据库的语句块,极大的减少了代码编写数量,减少了我开发的时间,并保证了连接的正确性,似的维护数据库连接的灵活性增强。DB类中实现了创建Connection连接方法获得与数据库的有效连接。创建SQL语句载体Statement方法。创建PreparedStatement的方法PreparedStatement语句能更有效地实现对数据库记录的添加删除修改操作。创建查询结果集ResultSet的方法结果集中包含了查询数据库所得到的所有数据记录。创建关闭Connection,Statement,ResultSet的方法。对数据库的所有操作完成之后必须将于数据库相连的Connecion对象关闭以释放系统所占的资源。图4-2用例图第5章详细设计本网站采用了后台数据库与前台相连接的技术实现了各个部分的链接。在前台的页面中我们又分为几个大块:首页,用户登录,我的购物车,管理员模块,根据上述对网页的设计与分析,整个系统的结构图如下所示:页面index.jsp。类别修改用户登陆注册页面index.jsp。类别修改用户登陆注册管理进入添加到购物车图书管理资料修改类别管理类别添加会员管理订单管理图书修改图书添加订单查询订单处理是否会员退出返回搜索物品选购物品结账付款填写订货单购物成功会员信息退出出图5-1系统结构图5.1数库设计本网站主要的数据表前台主要有如下几个:books;categories;subcategories;suppliers;customer;sorders;stockmovements;后台主要是管理员信息表:Adminbooks:库存图书信息表;categories:图书分类表;subcategories:图书子类表suppliers:出版商表;customers:客户表;orders:销售图书信息表;stockmovements:图书的入库,更改信息表;数据库设计要遵循一些规则,一个好的数据库满足一些严格的约束要尽量分离各实体对应的表,一个实体对应一个表,摘清楚该实体有哪些属性,对应有哪些属性,对应有些什么字段,以及各实体之间有何种联系。实体、属性与联系是进行概念设计时要考虑的3个要素,也是一个好的数据库设计的核心。表5-1:admin:管理员信息表;列名数据类型可否为空说明adminnamenvarchar(15)Notnull管理员名(主键)pwsvarchar(15)Notnull管理员密码表5-2categories:图书分类表列名数据类型可否为空说明IdcategorySmallintNotnull图书类编号(主键)CategorynameNvarchar(20)Notnull类名表5-3:books:库存图书信息表;列名数据类型可否为空说明idbookSmallintNotnull图书编号(主键)idcategorySmallintNotnull类编号(外键)IdsubcategorySmallintnotnull子类编号(外键)idsupplierSmallintNotnull出版商编号BooknameNvarchar(30)Notnull图书名IsbnVarchar(13)NotnullISBN编号DetailsNvarchar(300)null内容简介OrgcostSmallmoneyNotnull进价PriceSmallmoneyNotnull售价DiscountTinyintNotnull折扣率ImageurlNvarchar(50)null图片位置AvailstockIntNotnull可供销售的数目StockIntNotnull在库数ActiveBitNotnull是否发布HotdealBitNotnull是否是热点图书SalesIntNotnull已销售数VisitsIntNotnull被浏览次数表5-4:subcategories:图书子类表列名数据类型可否为空说明IdsubcategorySmallintNotnull图书子类编号(主键)SubcategorynameNvarchar(20)Notnull子类名IdcategorySmallintNotnull图书类编号(外键)表5-5:suppliers:出版商表列名数据类型可否为空说明IdsupplierSmallintNotnull出版商编号(主键)SuppliernameNvarchar(30)Notnull出版商名称表5-6:customers:客户表列名数据类型可否为空说明IdcustomerIntNotnull客户编号(主键)UsernameNvarchar(15)Notnull客户名PasswordVarchar(15)Notnull密码RealnameNvarchar(15)Notnull真实姓名PhoneVarchar(19)Notnull电话EmailVarchar(30)Null电子邮件地址[add]Nvarchar(30)Notnull地址CityNchar(10)Notnull城市StateNchar(10)Notnull省份ZipChar(6)Notnull邮政编码表5-7:stockmovements:图书的入库,更改信息表列名数据类型可否为空说明IdbookIntNotnull图书编号DatemovementDatetimeNotnull操作日期QuantityIntNotnull操作数量表5-8:orders:销售图书信息表列名数据类型可否为空说明IdorderIntNotnull定货编号(主键)OrderdateDatetimeNotnull定货日期(外键)IdcustomerIntNotnull客户编号(外键)IdbookIntNotnull图书编号(外键)TotalmoneySmallmoneyNotnull该类图书总价(打折以后)TotalbooksSmallintNotnull该类图书总数[add]Nvarchar()30Notnull送货地址CityNchar(10)Notnull送货城市StateNchar(10)Notnull送货省份CommentNvarchar(300)Null其他备注和要求IdpaymentTinyintNotnull付款方式SendBitNotnull是否已送货连接数据库。其流程图如下:定义变量定义变量调用openDB()打开数据库数据库操作过程操作完成关闭数据库调用closeDB()图5-2数据库连接流程图在所有与数据库连接的模块(页面)中只要包含该文件,就可以调用openDB()来边境和打开数据库,操作完成后再调用closeDB()来关闭数据库。5.2用户模块 用户模块分为会员注册并登录网站并在我的中管账户理自己的信息和网站管理员在后台管理会员信息两部分。用户进入网站后可以注册为会员,会员可以订购图书并享受折扣待遇。会员登录后可以在我的账户中管理自己的个人信息,包括修改查看个人基本信息,查看订单信息,查看消费信息。以下是网站首页:图5-3首页default.aspx网上售书前台网上售书前台图书浏览模块用户购物模块主编推荐购物车本周畅销媒体热点搜索图书用户注册用户登录选购图书订单信息个人信息图5-4网络书店前台功能模块首页中设计了主编推荐图书的展示区块,本周热点图书的展示区块,本月新出的展示区块。使用按销售额,上架时间,折扣排序从数据库中获取数据存放在传递的集合参数中。然后从集合中取出数据展示出来。三个区块的设计大致相同。 图5-5前台图书的展示该页面使用了图片热点超链接,即点击图片,便会跳转到与其相应的链接页面,让一幅平铺于网页背景的图片也具备链接锚点的功能,这里是用到了CSS的display:none属性,用这个属性控制属于背景中的文字链接呈不可见状态,这样就实现了背景链接功能。\<head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><title>图片热点超级链接</title></head><body><table><tr>

<td><imgsrc="images/rd.png"border="0"usemap="#map1"/></td><!--这里#号千万别忘记--></tr></table><mapname="map1"><areashape="rect"coords="28,10,153,39"href="#"/><areashape="rect"coords="30,50,154,80"href="#"/><areashape="rect"coords="28,89,153,120"href="#"/><areashape="rect"coords="28,130,153,160"href="#"/></map><!--shape属性有三种:矩形,圆形和多边形;coords前两个代表左上角的x轴,y轴坐标,后两个是右下角的x,y轴坐标--></body></html>这样,会形成页面基本色调,整个网页底板为一张图片,用图片热点链接的方式使得用户点击图片上的字幕时页面跳转到相应的网址。在主编推荐栏中,用户可以看到书的封皮,,署名和主要内容,另外,用户可以看到图书的定价,现价,折扣,以为在线用户的选购提供价格的参考。图5-6图书列表页面图书列表用户可以从左侧类别表中选择类表点击进入该类别下的图书展示网页booklist.aspx进行浏览。在该网页中获得用户点击的图书ID作为参数传递给业务逻辑类处理通过图书ID查询属于该类别的所有图书展示。图书记录取出同过HTML中UL列表技术依次展示。在网页中同样实现了分页和排序的技术。点击图书封面图片或点击图书内容提要,便可进入网页查看图书详细信息。点击购买,系统会先检验用户状态,若用户已登录,可将书放入购物车,若未登录,页面自动跳转到用户扥牢固界面logion.aspx。5.3用户注册模块浏览商品选择商品订购商品去购物车去收银台浏览商品选择商品订购商品去购物车去收银台提交订单未注册用户已登录注册用户未登录注册用户注册登录图5-7网站的购物流程图5-8用户注册页面电子商城系统离不开用户与网站之间的交互,用户注册和登录十分重要。该系统对用户注册和登录功能进行详细设计。 会员注册时在注册页面编辑个人信息,通过信息表单提交个人信息到服务器审核。检查用户提交的信息是否为空,用户提交的信息不能为空。会员注册用户名不能与以往已经注册的用户民重复,否则无法区分。在提交信息到数据库时对此进行了检查限制。通过调用UserManager().getInstance().checkUsername()检查会员名是否已经存在。注册入口注册入口必选项不为空密码是否一致用户唯一性验证通过提交到后台信息入数据库注册成功图5-9用户注册模块流程图另外,用户的注册信息要服从相应的格式,例如密码必须为英文字母或阿拉伯数字,并且至少为六位,确认密码与密码必须一致等。验证码的作用:有效防止这种问题对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上是用验证码是现在很多网站通行的方式(比如招商银行的网上个人银行,腾讯的QQ社区),我们利用比较简易的方式实现了这个功能。虽然登陆麻烦一点,但是对社区还来说这个功能还是很有必要,也很重要。但我们还是提醒大家主要保护自己的密码,尽量使用混杂了数字、字母、符号在内的6位以上密码,不要使用诸如1234之类的简单密码或者与用户名相同、类似的密码。验证码一般是防止批量注册的,人眼看起来都费劲,何况是机器。二像百度贴吧未登录发贴要输入验证码大概是防止大规模匿名回帖的发生目前,不少网站为了防止用户利用机器人自动注册、登录、灌水,都采用了验证码技术。所谓验证码,就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能。一般注册用户ID的地方以及各大论坛都要要输入验证码。审核通过便成功注册为会员。将信息添加到数据库中保存用户。5.4用户登录模块图5-10用户登录页面图此页面为用户登录模块Logion.aspx,在线用户只有登录以后才可以购买图书,未登录的用户只能查看图书,浏览和搜索图书,,用户将注册的信息输入相应的位置,点击“登录’,系统会在数据库中找到匹配的信息,并将将用户状态设置为”已登录“自动跳转到”default,aspx“。如果用户输入没有在系统中找到相应的信息,系统将会出现如下提示登录入口登录入口取得用户名和密码将UserID存入session中用户是否存在密码是否正确登录成功是是否否5-11用户登录流程图5.5图书搜索页面5-12图书搜索页面该功能是收集会员输入的查询图书条件后送到查找页面Search.aspx进行查找。查询条件有书名,作者名,图书类别等,可以输入多项中的一项或几项进行查找。因为是模糊查询,所以不用输入完整的数据项,比如:在书名中输入“计算机”,即可查出所有书名中包含“计算机”的所有图书信息。查询结果直接在本页显示,以列表的形式输出查询结果。5.6购物车模块使用web.config应用程序配置文件设定授权页面,确保“ShoppingCart.aspx”页面只有登录用户才可以使用;否则,系统自动跳转到登录页面,用户完成登录后,系统再自动跳转到“default.aspx”或“ShoppingCart.aspx”这两个页面,并完成添加到购物车功能或显示登录用户的购物车清单功能。图5-13图书信息页面图5-14购物车页面在线用户可以根据需要点击相应图书封面查看图书详细信息,包括内容提要,作者简介,编辑简介,图书目录等,用户可以由此处查看图书的详细信息,对所选图书有一个大致的了解如下流程直接查找先找到类别直接查找先找到类别找到子类别查看,比较作出决定放到购物车检查购物车考虑计算结帐将一些书重新放回书架图5-15购物流程图包括继续购物、更新购物车和结账操作。点击“继续挑选商品”将已购商品暂存于网页session中并返回购物主页面(Default.aspx)继续购物;点击“编辑”刷新本页面以显示最新的购物统计信息;点击“删除”则将暂存于网页session中的购物信息清空;点击“结算”将购物信息暂存于网页session中并转至生成结算,在网页的下边有商品金额总计,此项显示的是用户放入购物车的所有商品的总金额。订单信息将由管理员在后台处理!由管理员根据订单信息处理订单。5.7管理员界面图5-16管理员界面点击首页的“管理员界面“,有系统专设的管理员用户名和密码就进入了后台管理员页面如上图所示图5-16订单管理页面管理员负责对网站的所有基本信息进行维护。网上书店系统中管理员需要对图书类别,图书基本信息,图书入库信息,图书库存信息,订单信息以及用户信息进行管理。以上便是订单管理模块,刚才用户所选购的撒谎能够拼放入购物车后,后台的数据库中便存在了相应的订单信息,由管理员处理具体的订单,包括根据用户的真实姓名将图书出库,改变库存信息等。第6章系统测试启动网上书店系统设置该书店的默认初始页面为default.aspx。不同权限的用户都可以通过点击该页面的“用户登录”或“管理员登录”连接按钮,跳转到Logion.aspx实现不同角色的登录。运行各个模块进行调试利用不同的用户和权限,在各个运行模块中添加数据,依次进行基本调试。当用户打开该书斋的时候展示的默认页面为:Default.aspx(起始页面)。点击用户登录,如果用户未注册,则点击新用户注册如下所示:图6-1用户注册点击“完成”按钮,页面会有如上提示。随后页面自动跳转到首页点击“用户登录“,将刚才的注册用户名和密码输入图6-2用户登录这样页面会自动跳转到首页,在首页点击左侧的分类按钮,挑选任意一本书,点击书目详细信息页面中的“购买’按钮,便将图书加入了购物车图6-3图书详细信息查看在购物车中点击“继续挑选商品’,页面又跳转到图书列表,继续选择图书将其添加到购物车如下图:图6-4购物车查看商品总金额,正确!点击结算,页面弹出如下提示这样就完成了购书的整个流程。参考文献1、马骏,党兰学,杜莹等.C#.NET网页设计与网站开发.人民邮电出版社,2007.9。2、《.netFramework高级编程》KevinHoffmanJeffGabriel编著。3、李宗民.郭玉峰.C#.NET设计师之路.电子工业出版社,2006.3。4、刘乃丽.精通C#.NET2.0+SQLServer2005项目开发.人民邮电出版社,2007.2。5、刘婕.张琳等著C#.NET2.0+SQLServer动态网站开发从基础到实践.电子工业出版社,2007.1。6、《数据库系统概论》AbrahamHenry等著机械工业出版社。7、《软件工程》杨文龙姚淑珍吴芸编著电子工业出版社。8、马骏.C#网络应用编程实验指导与开发实例.人民邮电出版社,2007.39、顾兵.SQLServer2005网络数据库技术与应用.华中科技大学出版社,2005.1010、求实科技编著.C#.NET信息管理系统那个开发.人民邮电出版社,2005.311、RichardAnderson等著.C#.NET高级编程.清华大学出版社,2002致谢在这两个多月做毕业设计的日子里,老师对我严格要求,时常检查和督促并指导我,和我们一道讨论在实践过程中可能出现的难题及解决办法,使我们受益匪浅!我按照老师的要求,在老师的指导下查阅了大量的资料,对网站进行了规划和设计并完成了毕业设计。网站设计的过程中遇见了诸多问题:功能不完善、能想到却难以做到的等等许多问题,是老师的耐心指导和讲解,使得毕业设计定位在符合自己水平层次的功能实现和尽可能完善的功能实现。网站布局色彩搭配。感谢老师的认真指导。通过这次动态网页的制作,使我的实践动手能力有了很大的提高,同时对C#.NET网页制作也有了更深的了解,技术和水平有了很大的长进。最后也通过了老师的测试,一切都正常运行。这些都离不开老师的耐心指导和帮助,在此对老师表示衷心的感谢。由于我对网页制作的技术知识的掌握匮乏,与专业的设计师、制作者还有很大的差距,恳请各位老师给予批评和指正。再次衷心的感谢老师们的指导与帮助。附录附录一英文原文ASP.NEToverviewASP.NETisaunifiedWebdevelopmentmodelthatincludestheservicesnecessaryforyoutobuildenterprise-classWebapplicationswithaminimumofcoding.ASP.NETispartofthe.NETFramework,andwhencodingASP.NETapplicationsyouhaveaccesstoclassesinthe.NETFramework.Youcancodeyourapplicationsinanylanguagecompatiblewiththecommonlanguageruntime(CLR),includingMicrosoftVisualBasic,C#,JScript

.NET,andJ#.TheselanguagesenableyoutodevelopASP.NETapplicationsthatbenefitfromthecommonlanguageruntime,typesafety,inheritance,andsoon.ASP.NETincludes:Apageandcontrolsframework,TheASP.NETcompiler,Securityinfrastructure,State-managementfacilities,Applicationconfiguration,Healthmonitoringandperformancefeatures,Debuggingsupport,AnXMLWebservicesframework,Extensiblehostingenvironmentandapplicationlifecyclemanagement,AnextensibledesignerenvironmentTheASP.NETpageandcontrolsframeworkisaprogrammingframeworkthatrunsonaWebservertodynamicallyproduceandrenderASP.NETWebpages.ASP.NETWebpagescanberequestedfromanybrowserorclientdevice,andASP.NETrendersmarkup(suchasHTML)totherequestingbrowser.Asarule,youcanusethesamepageformultiplebrowsers,becauseASP.NETrenderstheappropriatemarkupforthebrowsermakingtherequest.However,youcandesignyourASP.NETWebpagetotargetaspecificbrowser,suchasMicrosoftInternetExplorer6,andtakeadvantageofthefeaturesofthatbrowser.ASP.NETsupportsmobilecontrolsforWeb-enableddevicessuchascellularphones,handheldcomputers,andpersonaldigitalassistants(PDAs).ASP.NETWebpagesarecompletelyobject-oriented.WithinASP.NETWebpagesyoucanworkwithHTMLelementsusingproperties,methods,andevents.TheASP.NETpageframeworkremovestheimplementationdetailsoftheseparationofclientandserverinherentinWeb-basedapplicationsbypresentingaunifiedmodelforrespondingtoclienteventsincodethatrunsattheserver.Theframeworkalsoautomaticallymaintainsthestateofapageandthecontrolsonthatpageduringthepageprocessinglifecycle.TheASP.NETpageandcontrolsframeworkalsoenablesyoutoencapsulatecommonUIfunctionalityineasy-to-use,reusablecontrols.Controlsarewrittenonce,canbeusedinmanypages,andareintegratedintotheASP.NETWebpagethattheyareplacedinduringrendering.TheASP.NETpageandcontrolsframeworkalsoprovidesfeaturestocontroltheoveralllookandfeelofyourWebsiteviathemesandskins.Youcandefinethemesandskinsandthenapplythematapageleveloratacontrollevel.Inadditiontothemes,youcandefinemasterpagesthatyouusetocreateaconsistentlayoutforthepagesinyourapplication.Asinglemasterpagedefinesthelayoutandstandardbehaviorthatyouwantforallthepages(oragroupofpages)inyourapplication.Youcanthencreateindividualcontentpagesthatcontainthespecificcontentyouwanttodisplay.Whenusersrequestthecontentpages,theymergewiththemasterpagetoproduceoutputthatcombinesthelayoutofthemasterpagewiththecontentfromthecontentpage.AllASP.NETcodeiscompiled,whichenablesstrongtyping,performanceoptimizations,andearlybinding,amongotherbenefits.Oncethecodehasbeencompiled,thecommonlanguageruntimefurthercompilesASP.NETcodetonativecode,providingimprovedperformance.ASP.NETincludesacompilerthatwillcompileallyourapplicationcomponentsincludingpagesandcontrolsintoanassemblythattheASP.NEThostingenvironmentcanthenusetoserviceuserrequests.Inadditiontothesecurityfeaturesof.NET,ASP.NETprovidesanadvancedsecurityinfrastructureforauthenticatingandauthorizinguseraccessaswellasperformingothersecurity-relatedtasks.YoucanauthenticateusersusingWindowsauthenticationsuppliedbyIIS,oryoucanmanageauthenticationusingyourownuserdatabaseusingASP.NETformsauthenticationandASP.NETmembership.Additionally,youcanmanagetheauthorizationtothecapabilitiesandinformationofyourWebapplicationusingWindowsgroupsoryourowncustomroledatabaseusingASP.NETroles.Youcaneasilyremove,addto,orreplacetheseschemesdependingupontheneedsofyourapplication.ASP.NETalwaysrunswithaparticularWindowsidentitysoyoucansecureyourapplicationusingWindowscapabilitiessuchasNTFSAccessControlLists(ACLs),databasepermissions,andsoon.FormoreinformationontheidentityofASP.NET,ASP.NETprovidesintrinsicstatemanagementfunctionalitythatenablesyoutostoreinformationbetweenpagerequests,suchascustomerinformationorthecontentsofashoppingcart.Youcansaveandmanageapplication-specific,session-specific,specific,user-specific,anddeveloper-definedinformation.Thisinformationcanbeindependentofanycontrolsonthepage.ASP.NEToffersdistributedstatefacilities,whichenableyoutomanagestateinformationacrossmultipleinstancesofthesameapplicationononecomputeroronseveralcomputers.ASP.NETapplicationsuseaconfigurationsystemthatenablesyoutodefineconfigurationsettingsforyourWebserver,foraWebsite,orforindividualapplications.YoucanmakeconfigurationsettingsatthetimeyourASP.NETapplicationsaredeployedandcanaddorreviseconfigurationsettingsatanytimewithminimalimpactonoperationalWebapplicationsandservers.ASP.NETconfigurationsettingsarestoredinXML-basedfiles.BecausetheseXMLfilesareASCIItextfiles,itissimpletomakeconfigurationchangestoyourWebapplications.Youcanextendtheconfigurationschemetosuityourrequirements.ASP.NETincludesfeaturesthatenableyoutomonitorhealthandperformanceofyourASP.NETapplication.ASP.NEThealthmonitoringenablesreportingofkeyeventsthatprovideinformationaboutthehealthofanapplicationandabouterrorconditions.Theseeventsshowacombinationofdiagnosticsandmonitoringcharacteristicsandofferahighdegreeofflexibilityintermsofwhatisloggedandhowitislogged.ASP.NETsupportstwogroupsofperformancecountersaccessibletoyourapplications:TheASP.NETsystemperformancecountergroupTheASP.NETapplicationperformancecountergroupASP.NETtakesadvantageoftherun-timedebugginginfrastructuretoprovidecross-languageandcross-computerdebuggingsupport.Youcandebugbothmanagedandunmanagedobjects,aswellasalllanguagessupportedbythecommonlanguageruntimeandscriptlanguages.Inaddition,theASP.NETpageframeworkprovidesatracemodethatenablesyoutoinsertinstrumentationmessagesintoyourASP.NETWebpages.ASP.NETsupportsXMLWebservices.AnXMLWebserviceisacomponentcontainingbusinessfunctionalitythatenablesapplicationstoexchangeinformationacrossfirewallsusingstandardslikeHTTPandXMLmessaging.XMLWebservicesarenottie

温馨提示

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

评论

0/150

提交评论