网上书店系统_第1页
网上书店系统_第2页
网上书店系统_第3页
网上书店系统_第4页
网上书店系统_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

摘 要 伴随着计算机技术在各行各业日益广泛和深入的应用,网络的概念早已深入人心。 网络在各行各业的发展战略中占据了重要的位置,成为商家不可分割的部分。商品的 宣传已不只局限于电视与报纸,网络已成为商家展示自己的另一个舞台。商家建立网 站,将商家各方面的宣传与服务展现于网络中,通过网络更可实现如网上购物,信息 查寻等功能,这些在改变我们原有经营方式与经营理念的同时,也为商家带来了更高 的效益。因此,对于商家来说,拥有一个属于自己的网站是至关重要的。 本论文设计了一个网上书店系统。系统使用 Microsoft 公司的 C#中 ASP.NET 为核 心语言,利用微软提供的 IIS 建立运行环境,再结合 SQL Server 2005 建立数据连接 关系。利用其提供的各种组件,在短时间内建立数据库,对数据库进行分析,然后建 立 ASP.NET 页面,不断改进,直到功能基本实现。 关键词:关键词: .Net.Net;三层架构;三层架构;B/SB/S;图书销售;工厂模式;图书销售;工厂模式 Abstract Along with the computer technology in all walks of life increasingly wide and deep, the concept of the application of network already thorough popular feeling. Network in the development strategy of tencent played an important role, become an integral part of businessman. Commodity propaganda has not only confined to television and newspaper, the Internet has become businessman another stage show itself. Merchants build website, will merchants all aspects of propaganda and service show at network, the network can be realized through more shopping, such as online information search, and other functions, these changing our original mode of operation and management idea, but also for merchants brought higher benefits. So, for the merchants speaking, have their own web site is crucial. This paper designs an online bookstore system. Systems use Microsoft company c # as the core language using Microsoft provides IIS, establish the operation environment, combined with SQL Server 2005 data connection relationship established. Use of its various components, providing a database in a short time, the data analysis, and then build page, improving continuously, until function realized basically. KeywordsKeywords:.NET;.NET; Three-layerThree-layer frameworkframework; ; B/S;B/S; BookBook Sale;Sale; FactoryFactory DesignDesign ParttenPartten 2 第一章第一章 绪论绪论 1.11.1 概述概述 网上购物,顾名思义就是通过互联网检索商品信息,并通过电子订购单发 出购物请求,然后填上私人支票帐号或信用卡的号码,厂商通过邮购的方式发 货,或是通过快递公司送货上门。国内的网上购物,一般付款方式是款到发货 (直接银行转帐,在线汇款) 。担保交易(淘宝支付宝,百度百付宝,腾讯财付 通等的担保交易) ,货到付款等。 随着互联网在中国的进一步 的发展和普及应用,网上购物逐渐成为人们 的消费行为之一。据悉, CNNIC 采用电话调查方式,在 2009 年 12 月对 19 个经济发达城市进行 调查,4 个直辖市为北京、上海、重庆和天津,15 个副省级城市为 广州、深圳、沈阳、哈尔滨、长春等。访问对象是半年内 上过网且在网上买过东西的网民。报告 显示,在被调查的 19 个城市中,上 半年网络购物金额达到了 162 亿元。从性别比例看,男性网购总金额为84 亿元,女性网购金额略低于男性,达到78 亿元。其中,学生半年网购总金 额已达 31 亿,是非学生半年网购总金额的近1/4。 据中国互联网络信息中心( CNNIC)发布第 27 次中国互联网络发展 状况调查统计报告 ,截至 2010 年底,我国网民规模达到 4.57 亿,网络购 物成为增长最快的互联网应用, 网购市场金额预计可达 5231 亿元 通过上述的数字,我们不难发现网络购物在中国呈现一种蓬勃发展的趋 势。但这种发展趋势也存在一些弊端,例如信用,质量,时间等问题。但这 些瑕疵是阻挡不住网络购物发展的趋势。网络购物的未来前景光明,形式一 片大好。 随着我国网络经济的快速发展,互联网用户数突破了 1.1 亿,有过购物经 历的用户达到 3000 万人,其中有一半人已经习惯网上购物。网上书店系统的存 在给予广大用户能不出门也能买到书,搜索到自己想要的书籍。随着网站的大 规模化,它的存在就成为互联网生活中不可缺少的一部分。本系统主要采用 ASP.NET,开发语言为 C#,主要是介绍如何进行系统分析和规划,数据库如何 设计与实现,并且使用 ASP.NET 具有的基于三层应用程序模型,进行电子商务 系统的设计与实现。在下面的各章节中,我将详细的介绍网上书店系统 BookShop 的开发过程和所涉及的问题以及解决方法。 3 1.21.2 系统研究动态系统研究动态 在当前电子商务的实际用用过程中,有两个主流应用,一类是 B2B(Business to Business),一类是 B2C(Business to Customer)。其中 B2B 主要面向的是企业与企业,或是大宗单子,这种平台对性能、安全和服务要求 比较高。下面是有关 B2C 的一些介绍: B2C 即企业通过互联网为消费者提供一个新型的购物环境网上商店, 消费者通过网络在网上购物、在网上支付。由于这种模式节省了客户和企业的 时间和空间,大大提高了交易效率,特别对于工作忙碌的上班族,这种模式可 以为其节省宝贵的时间。但是在网上出售的商品特征也非常明显,仅局限于一 些特殊商品,例如图书、音像制品、数码类产品、鲜花、玩具、饮食等等。这 些商品对购买者视、听、触、嗅等感觉体验要求较低,像服装、音响设备、香 水需要消费者特定感官体验的商品不适宜在网上销售,当然,可以确定的是, 也不排除少数消费者就认定某一品牌某一型号而不需要现场体验就决定购买, 但这样的消费者很少,人们更愿意相信自己的体验感觉来决定是否购买,所以, B2C 市场上成功的企业如京东、当当、卓越,都是卖一些特殊商品的。B2C 电子 商务的付款方式是货到付款与网上支付相结合,而大多数企业的配送选择物流 外包方式以节约运营成本。随着用户消费习惯的改变以及优秀企业示范效应的 促进,网上购物的用户不断增长。此外,一些大型考试如公务员考试也开始实 行 B2C 模式。 B2C 网站:主要功能包括网上的交易、订货、付款、客户服务和货物递交 等销售、售前和售后服务,以及市场调查分析、财务核计及生产安排等多项利 用 Internet 开发的商业活动。 B2C 定制网站:以忆典定制为代表,消费者只需选择自己喜欢的礼物,然 后通过网站提供的设计软件,消费者可以随心所欲设计自己的礼物,设计完后 就提交订单,十分迅捷 目前国内的知名的网店软件有 shopex、乐度网店系统、大侠软件、 PROBIZ 博商软件、 EC-Spyder(波希网络) 、易想 B2C 商城购物系统、忆典 定制礼品定制系统等,他们在国内占据着主流的B2C 软件市场。在参与定 制化开发的过程中,恒生电子也是国内市场的有利竞争者 4 1.31.3 论文主要研究内容论文主要研究内容 鉴于目前电子商务软件的发展状况,开发实用的网上图书销售系统在市场 上有很大的潜力。 网络图书销售作为目前发展比较成熟的电子商务应用,在网站的开发和部 署中占有一定的比例和侧重。它的功能日臻完善,为图书的销售和采购都提供 了一个方便快捷的稳定平台。 此系统可完成的功能有:用户注册管理、管理员管理、订单管理、购物车 管理等。 实现了用户浏览察看商品,进行定购并下订单,双方确认然后付款交货, 完成交易这一电子商务的主要流程。 网络图书交易系统一般需要实现如下功能: 分类图书管理模块:分类图书管理模块: 1、包括所售图书的分类添加、删除和修改,能够上传并显示图书封面; 2、能够查询、统计和查询库存图书的状态 用户管理模块用户管理模块 1、 用户角色划分 不同角色的用户在系统中具有不同功能,管理员能够使用管理功能,注册 用户能够参与采购,非注册用户只能浏览。 2、 添加用户、设定角色,修改用户信息,删除用户 3、 用户注册 4、 用户登录 5、用户个人资料修改 网络销售图书展示功能网络销售图书展示功能 1. 图书分类显示 2. 特价或推荐图书突出显示 3增加书评和好书推荐功能 购书车功能模块购书车功能模块 1. 记录并自动计算登录用户所购图书的数目,价钱,希望送货时间。 2. 订单取消功能。 3. 订单查询 订单处理功能订单处理功能 1. 管理员处理订单 2. 处理反馈 5 1.41.4 论文组织结构论文组织结构 论文的组织结构为: 第一章是绪论,介绍分析网上书店市场的当前状况,目前国内的用网络进 行图书销售市场经营的有一部分,但开发网上图书销售系统在市场上仍然有很 大的潜力,而且有利于图书销售这一行业的发展; 第二章讲述系统实现的关键技术,包括 B/S 模式与 C/S 模式体系结构,C# 编程语言,数据库技术和三层技术; 第三章是需求分析与系统设计结构,分析了开发网上图书销售系统的可行 性,详细的介绍了系统的结构; 第四章是系统实现,对主要模块深入分析编码过程和实现方法; 第五章是测试分析,系统编码完成后,对系统功能进行测试,以便发现问 题和改进性能,达到预期目标; 第六章的全文总结与展望,总结论文的内容,根据系统的特性展望未来的 发展。 1.51.5 本章小结本章小结 本章主要分析了当今市场网上图书销售市场的一些状况以及国内外一些典 型的图书销售的情况,考虑到了顾客对售书的服务需求和网上书店管理系统在 当今市场的状况,对网络图书销售信息系统进行了比较系统的描述,阐述了研 究的可行性。 在激烈的市场竞争下,图书销售要提高竞争力,就首先在销售管理上要有 所突破,可以实现网络定购、电话预约和实时查询订单功能,跟踪订单发往到 何处,提高工作效率,这是我们值得推广和深入讨论的话题。 6 第二章第二章 系统实现的关键技术系统实现的关键技术 2.12.1 B/SB/S 概述概述 B/S 结构,即 Browser/Server(浏览器/服务器)结构,就是只安装维护一个 服务器(Server),而客户端采用浏览器(Browse)运行软件。它是随着 Internet 技术的兴起,对 C/S 结构的一种变化和改进。B/S 三层体系结构采用三层客户/ 服务器结构,在数据访问层(Server)和用户界面层(Client)增加了一层结构, 称为中间件(Middleware),使整个体系结构成为三层。三层结构是伴随着中间 件技术的成熟而兴起的,核心概念是利用中间件将应用分为表示层、业务逻辑 层和数据访问层三个不同的处理层次,这种结构下的用户工作界面是通过浏览 器实现,主要事务逻辑在服务器端(Server)实现,形成三层结构。 在 B/S 体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发 出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。而 其余如数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用 程序的执行等工作全部由 Web Server 完成。随着 Windows 将浏览器技术植入操 作系统内部,这种结构已成为当今应用软件的首选体系结构。显然 B/S 结构应 用程序相对于传统的 C/S 结构应用程序是一个非常大的进步。 BS 结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体 拥有成本低。但数据安全性问题、对服务器要求过高、数据传输速度慢、软件 的个性化特点明显降低,这些缺点是有目共睹的,难以实现传统模式下的特殊 功能要求。 2.22.2 .NET.NET 概述概述 .1 NETNET FrameworkFramework .NET Framework 又称 .Net 框架。是由微软开发,一个致力于敏捷软件开 发(Agile software development) 、快速应用开发(Rapid application development) 、平台无关性和网络透明化的软件开发平台。.NET 是微软为下一 个十年对服务器和桌面型软件工程迈出的第一步。.NET 包含许多有助于互联网 和内部网应用迅捷开发的技术。 .NET 框架是微软公司继 Windows DNA 之后的新开发平台。.NET 框架是以一 种采用系统虚拟机运行的编程平台,以通用语言运行库(Common Language 7 Runtime)为基础,支持多种语言(C#、VB、C+、Python 等)的开发。 .NET 也为应用程序接口(API)提供了新功能和开发工具。这些革新使得 程序设计员可以同时进行 Windows 应用软件和网络应用软件以及组件和服务 (web 服务)的开发。.NET 提供了一个新的反射性的且面向对象程序设计编程 接口。.NET 设计得足够通用化从而使许多不同高级语言都得以被汇集。2.2.1 C#编程语言 C#是微软公司发布的一种面向对象的、运行于.NET Framework 之上的高级 程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司 研究员 Anders Hejlsberg 的最新成果。 C#是一种安全的、稳定的、简单的、优雅的,由 C 和 C+衍生出来的面向 对象的编程语言。它在继承 C 和 C+强大功能的同时去掉了一些它们的复杂特 性(例如没有宏和模版,不允许多重继承) 。C#综合了 VB 简单的可视化操作和 C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和 便捷的面向组件编程的支持成为.NET 开发的首选语言。 并且 C#成为 ECMA 与 ISO 标准规范。C#看似基于 C+写成,但又融入其它语言如 Delphi、Java、VB 等。 微软 C#语言定义主要是从 C 和 C+继承而来的,而且语言中的许多元素也反 映了这一点。 .2 C#C#的扩展的扩展 C sharp(又被简称为C#)是微软公司在二 OOO 年六月发布的一种新的编程 语言,并定于在微软职业开发者论坛(PDC)上登台亮相.C#是微软公司研究员 Anders Hejlsberg 的最新成果.C#看起来与 Java 有着惊人的相似;它包括了诸 如单一继承,界面,与 Java 几乎同样的语法,和编译成中间代码再运行的过程.但 是 C#与 Java 有着明显的不同,它借鉴了 Delphi 的一个特点,与 COM(组件对象模 型)是直接集成的,而且它是微软公司.NET windows 网络框架的主角。 在本文中,我将考察创建一种新计算机语言的一般动机,并将特别指明是什 么原因导致了 C#的出现.然后我将介绍 C#和它与 Java 语言,c 语言,c+语言的 相似之处.其次我将讨论一些存在于 Java 和 C#之间的高层次的,和基础的差别. 我将以衡量在用多种语言开发大型应用程序的时候所需的知识(或者对这种知识 的缺乏程度)来结束本文,而这正是.NET 和 C#的一个主要战略.目前,C#和.NET 还只能以 C#语言规则,以及 Windows 2000 的一个d 预览版本,还有 MSDN 上迅 速增多的文档集子的形式获得(还没有最终定型)。2.3 数据库技术 目前使用的数据库一般为关系型数据库管理系统(RDBMS) ,对于 Microsoft SQL Server 200X 数据库是多关系数据管理系统,具有强大的扩展 8 性。 2.32.3 SQLSQL ServerServer .1 SQLSQL 结构化查询语言结构化查询语言 SQL 是高级的非过程化编程语言,允许用户在高层数据结构上工作。它 不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式, 所以具有完全不同底层结构的不同数据库系统,可以使用相同的SQL 语言 作为数据输入与管理的 接口。它以记录集合作为操作对象,所有SQL 语句接受集合作为输入,返 回集合作为输出,这种集合特性允许一条SQL 语句的输出作为另一条 SQL 语句的输入,所以 SQL 语句可以嵌套,这使他具有极大的灵活性和强大的功 能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个 SQL 语句就可以达到目的,这也意味着用SQL 语言可以写出非常复杂的语句。 结构化查询语言 (Structured Query Language)最早是 IBM 的圣约瑟研 究实验室为其关系数据库管理系统SYSTEM R 开发的一种查询语言,它的前 身是 SQUARE 语言。SQL 语言结构简洁,功能强大,简单易学,所以自从 IBM 公司 1981 年推出以来, SQL 语言得到了广泛的应用。如今无论是像 Oracle、Sybase、DB2、Informix、SQL Server 这些大型的数据库管理系统, 还是像 Visual Foxpro、PowerBuilder 这些 PC 上常用的数据库开发系统, 都支持 SQL 语言作为查询语言。 美国国家标准局 (ANSI)与国际标准化组织( ISO)已经制定了 SQL 标准。ANSI 是一个美国工业和商业集团组织,负责开发美国的商务和通讯标 准。ANSI 同时也是 ISO 和 International Electrotechnical Commission(IEC)的成员之一。 ANSI 发布与国际标准组织相应的美国标准。 1992 年,ISO 和 IEC 发布了 SQL 国际标准,称为 SQL-92。ANSI 随之发布的 相应标准是 ANSI SQL-92。ANSI SQL-92 有时被称为 ANSI SQL。尽管不同 的关系数据库使用的 SQL 版本有一些差异,但大多数都遵循 ANSI SQL 标 准。SQL Server 使用 ANSI SQL-92 的扩展集,称为 T-SQL,其遵循 ANSI 制定的 SQL-92 标准。 数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。 1 1、物物理理数数据据层层。 9 它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些 数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位 串、字符和字组成。 2 2、概概念念数数据据层层。 它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的 逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所 有对象的逻辑关系,而不是它们的物理情况,是 数据库管理员概 念下的数 据库。 3 3、逻逻辑辑数数据据层层。 它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数 据集合,即逻辑记录的集合。 数据库不同层次之间的联系是通过映射进行转换的。 2.42.4 数据安全数据安全 数据库管理系统对数据本身的保护不够,就有可能被任何人访问。用户完 全可以不按规定的用户操作流程进行操作,随心所欲修改和删除数据,对后台 数据库构成直接威胁。通过用户身份验证、数据备份与还原等技术来保护数据。 备份数据库是对数据库或事务日志进行拷贝,当系统、磁盘或数据库文件 损坏时,可以使用备份文件进行恢复,防止数据丢失。 还原数据库是使用数据库的备份文件对数据库进行还原操作。由于病毒的 破坏、磁盘损坏或操作员操作失误等原因会导致数据丢失、不完整或数据错误, 此时,需要对数据库进行还原。 2.52.5 三层技术三层技术 目前,典型的分层架构是三层架构,依次是数据访问层、业务逻辑层和表 示层。综合现有的成功实践和.NET 平台的特殊性,本系统中将三层架构的层次 划分如下: 数据访问层负责与数据源的交互,即数据的插入、删除、修改以及从 数据库中读出数据等操作。对数据的正确性和可用性不负责,对数据的用途不 了解,不负担任何业务逻辑。 业务逻辑层负责系统领域业务的处理,负责逻辑性数据的生成、处理 10 及转换。对流入的逻辑性数据的正确性及有效性负责,对流出的逻辑性数据及 用户性数据不负责,对数据的呈现样式不负责。 表示层负责接收用户的输入、将输出呈现给用户以及访问安全性验证。 对流入的数据的正确性和有效性负责,对呈现样式负责,对呈现友好的错误信 息负责。其结构如图 2-1 所示。 图 2-1 三层结构 2.62.6 本章小结本章小结 本章主要对当今软件设计的主流技术三层架构技术和项目开发用到的技术 作出了介绍和探讨。在.NET Framework 上用 C#语言开发的数据库技术,还有在 网络图书销售系统中的应用三层技术架构,充分发挥了面向对象编程的特点, 便于管理和维护。 11 第三章第三章 需求分析与系统设计结构需求分析与系统设计结构 3.13.1 需求分析需求分析 通过相关调查发现系统包含两类用户,即管理员和普通用户。针对这两类 用户,系统根据登录时的角色判断,跳转到相应的页面为其提供操作。 网上图书销售系统首先应该方便用户浏览、购买图书,同时需要由系统管 理员进行管理和维护,由此分为以下几个方面: (1)书籍管理模块 该模块负责管理本系统所有销售书籍信息。主要功能包括添加、删除、修 改以及查找信息,并且包括商品高级查询子模块,该模块将在下面介绍。只有 管理员才具有对书籍信息进行修改的权利,商品管理是网上书店系统的核心, 网上书店对书籍价格的调整以及新书的添加等都将在这部分完成。 (2)用户管理模块 该模块负责管理所有网上书店的用户信息。主要功能包括添加、删除、修 改以及查找用户信息。用户将被分为两类:管理员和会员。会员类型的转换也 将在用户管理中实现,管理员可以管理所有用户信息,而会员只能对自己私有 的信息进行维护。 (3)销售统计模块 为了查看书店的销售业绩,我们必须对所有的书籍的销售情况进行汇总, 销售统计模块将完成此项功能,系统可按时间、书籍类型、出版日期等内容或 任意几项内容的组合来对所售书籍情况进行添加,包括销售数量、销售额等。 该统计模块是一个相当完整的模块。 (4)商品查询模块 管理模块和销售模块中都提供了书籍查询模块。在管理模块中,书籍查询 是出于维护的目的,也就是说紧接着查询下一个功能就是商品维护功能。而在 销售模块中,书籍查询是出于购买的目的,紧接着查询的下一个功能应是对书 籍的购买操作或是个人的购物车添加功能。对于商品查询我们提供多条件组合 查询,包括按时间、书籍类型、出版日期等内容或任意几项内容的查询,这与 统计的方式相当相似。只是添加结果是一个总体,而查询结果是各项各类的逐 条信息。 (5)商品浏览模块 12 为了让会员购买书籍,我们必须先提供让其了解书籍信息,然后做出购买 的决定。在首页我们提供有限的最新商品的销售信息,如果会员需要分类了解 书籍信息,系统为每个分类都提供了详细的分类书籍信息提供页,会员可以选 择是否购买或者放入购物车以供将来选择参考。 (6)购物车模块 电子商务站点的核心就是购物车。会员可在这个区域内建立他们的订单, 只要选择各种自己需求的商品,并将它们添加到自己的预购信息栏中即可。通 常,该过程被形象地成为“向车中添加项目”,这就像在超市购物一样。当然, 他随时有权将商品从车中取出,或者将车推往前台结账。 3.23.2 系统总体设计系统总体设计 本研究课题的主要的目的是是设计并实现一个 B/S 体系结构的网络图书交 易系统,以便反应客户的需求,把交易变得更方便,使图书的购买变得容易。 .1 功能结构功能结构 根据以上对本系统结构和功能的概述,网上书店系统主要包括两大模块: 一为系统管理模块,二为系统销售模块。在大模块下又划分出若干小模块,将 其各项功能模块划分成相应的程序模块。画出系统模块的层次方框图,如图 3- 1。下图中的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数 据的实际数据元素(不能再分割的元素) 。 13 书 籍 管 理 购 物 车 用 户 登 录 与 注 册 网 上 书 店 系 统 用 户 管 理 销 售 统 计 书 籍 查 询 书 籍 浏 览 后台管理模块 前台销售模块 图 3-1 系统模块的层次方框图 .2 架构设计架构设计 系统按照三层架构技术设计,按功能可以分为表示层、业务逻辑层和数据 访问层。分层技术提高了系统的灵活性和维护性。系统的三层架构如图 3-3。 14 图 3-2 系统的三层架构 表示层 业务逻辑层 数据访问层 数据库 表示层主要表示 WEB 方式或者 Windows 窗体方式,需要访问实体对象的属 性值;业务逻辑层主要是对具体的问题的操作,对数据业务逻辑处理;数据访 问层主要是对原始数据,包括数据库或者文本文件等存放数据的形式的操作层。 .3 运行环境运行环境 网络销售系统可以在任何安装有 Windows 32 位操作系统的 PC 机上运行, 支持 Microsoft SQL Server 2005 数据库管理系统和 Microsoft .NET Framework SDK v2.0,开发语言为 C#2.0,开发平台为 Microsoft Visual Studio 2008。 3.33.3 业务流程业务流程 网络销售系统的业务流程用例图如图 3-3。 15 登录系统 结账 游客 基本功能 基本信息 个人信息查 询 订单查询 商品浏览 商品购买 消费查询 订单管理 系统维护 数据备份 数据还原 管理员 会员管理 图书管理 角色管理 订单管理 会员 注册系统 商品浏览 图 3-3 业务流程用例 图 3.43.4 系统流程分析系统流程分析 网络销售系统的系统流程图如图 3-4。 16 浏览 书籍 放入 购物车 查看 购物车 提示无 书信息 是否有 书 确认 购书 去结算 中心 显示当前订 单 中图书信息 结账 结账 成功 结束 是 否 登 录 开始 普通用 户首页 登录 判断 用户角 色 管理员 首页 普通会 员首页 管理员 普 通 会 员 有 无 是 否 查看详 细信息 图 3-4 业务流程用例图 3.53.5 数据库结构数据库结构 根据图书销售的特点,把数据库命名 db_BookShop,数据表分别是 tb_Books,tb_BooksClicked,tb_Order,db_Category,tb_Customers,tb_Items,t b_ItemCategory,tb_OrderItems,tb_Publishers,tb_Roles 17 图 3-5 数据表 .1 数据库概念设计数据库概念设计 根据以上的数据库概念设计出系统数据库方面的逻辑结构和实体联系 图(ER图)。 (1)网上书店系统用户与书之间的 E-R 图 图 3-6 网上书店系统用户与书之间的 E-R 图 作者 价格 出版社 书店 种类 书简介 卡号 密码 姓名 数量优惠额 度 银 行 卡 图 书 使 用 顾 客 购 买 18 (2)网上书店系统用户,图书与管理员之间的E-R图 图 3-7 实体关系图 (3)网上书店系统书籍信息实体图 书籍信息 书籍名 称 书籍编 号 出版时 间 简单描 述 书籍类 别 书籍原 价 打折额 度 图 3-8 网上书店系统书籍信息实体图 密码 书名 账号 作者 用户名 出版 社 价格种类 管理员 管理 银行卡 姓名 密码 卡号 书简介 图书 用户信息 电子邮箱 用户类别 介 用户名 登录密码 介 19 .2 数据库逻辑结构设计数据库逻辑结构设计 根据 E-R 图在数据库中创建数据表,结构如下: 表 3-1 图书表 列名数据类型Allow nulls描述备注 itemIdintN图书编号主键 bookNameVarchar(100)N图书名称 caregoryIdintN图书类别 photonvarchar(255)Y图片信息 publsherIdintN出版社编号 inTimeDatetimeY入库时间 saleNumintY图书数量 priceDecimal(18)N进书价格 detailNvarchar(255)Y详细描述 表 3-2 图书详细信息表 列名数据类型Allow nulls描述备注 itemIdintN图书编号主键 bookNameVarchar(100)N图书名称 caregoryIdintN图书类别 photonvarchar(255)Y图片信息 AuthorVarchar(20)N作者姓名 popularity IntN图书人气 collection Varchar(20)N收藏记录 evaluation Varchar(70)Y相关评价 introduction Nvarchar(255)Y图书简介 表 3-3 图书分类表 列名数据类型Allow nulls描述备注 Category idintN类别编号主键 Caregory NameVarchar(20)N图书名称 Caregory browsing intN该类别浏览 数 20 表 3-4 普通客户信息表 列名数据类型Allow nulls描述备注 nameVarchar(50)N客户用户名主键 TruenameVarchar(50)N真实姓名 PasswordVarchar(50)Y登录密码 QQVarchar(15)NQQ EmailVarchar(20)Y邮箱地址 addresVarchar(100)Y用户地址 表 3-5 会员客户信息表 列名数据类型Allow nulls描述备注 nameVarchar(50)N会员用户名主键 TruenameVarchar(50)N真实姓名 PasswordVarchar(50)Y登录密码 QQVarchar(15)YQQ EmailVarchar(20)Y邮箱地址 integral intN会员积分 yearsDatetimeN注册时间 record Varchar(50)N消费记录 PhoneintY联系电话 addresVarchar(100)Y用户地址 表 3-6 管理员信息表 列名数据类型Allow nulls描述备注 nameVarchar(50)N管理员账号主键 PasswordVarchar(50)Y管理密码 EmailVarchar(20)Y邮箱地址 PhoneintY联系电话 QQVarchar(10)YQQ 表 3-7 订单表 列名数据类型Allow nulls描述备注 Order NointN订单号主键 Use ridchar(80)N订单人编号 Order DateDatetimeN时间 Order SumIntY折扣后金额 Recnamechar(60)N收货人姓名 RecAddresschar(60)Y收货人地址 RecMailchar(80)Y邮箱地址 RecPhoneintN联系电话 PayTypechar(60)N支付方式 21 表 3-8 订单详细信息表 列名数据类型Allow nulls描述备注 BooknameVarchar(50)N图书名主键 BooktypeintN图书类型 BookpriceintN单价 AmountintY订制数量 DatedatetimeN订制时间 stateVarchar(10)N订单状态 表 3-9 用户银行卡支付表 列名数据类型Allow nulls描述备注 Card idInt(10)N银行卡号主键 Card codeChar(6)N银行卡密码 nameChar(10)N用户姓名 Pay timeDatetimeN支付时间 Card CategoryChar(10)N银行卡类别 表 3-10 图书点击量 列名数据类型Allow nulls描述备注 Book idIntN图书编号主键 Book namechar(60)N图书姓名 Book categorychar(60)N图书类别 Day clickintN日点击量 Month clickintN月点击量 Total clickintN总点击量 Total collection IntY总收藏量 表 3-11 图书销售记录 列名数据类型Allow nulls描述备注 Book idIntN图书编号主键 Book namechar(60)N图书姓名 Book categorychar(60)N图书类别 Book priceintN图书价格 VIP priceIntN会员价格 Order quantity intN订单量 salesintN销售量 22 3.63.6 文件组织结构文件组织结构 网络销售系统在开发当中会用到大量的窗体,为了方便管理和查看,在 BookShop 解决方案中将图片文件放在 image 和 img 文件夹,公共类都分别放到 了相应的层里面,窗体放在工程项目的根目录下根据相应的权限可访问的页面 放到了相应的文件夹里面。文件组织结构如图 3-10 所示。 图 3-9 文件组织结构 3.73.7 本章小结本章小结 本章主要说明需求分析和详细分析了系统的功能结构,介绍了程序流程, 深入分析了数据库的设计方法,列举了数据库中每个数据表的逻辑结构。 数据库逻辑设计是建立数据表前的一项工作。网络图书销售系统涉及的数 据量比较多,不同的数据要分开不同的表来储存,然后通过主键关联。 23 第四章第四章 公共模块公共模块 4.14.1 用户登录及修改密码模块用户登录及修改密码模块 .1 登录登录模块模块 输入用户名和密码点击登录按钮,确认身份后用户进入系统,若为空或者 错误时会有相应的提示信息。登录后根据用户的角色系统进入不同界面,用户 可以选择进行其他操作。 图 4-1 登录界面 代码如下: Customers us = CustomersManage.Login(nametext.Text.Trim(),passwordtext.Text.Trim(); Sessionuser = us;/保存用户 if (us != null) if (us.Role.RoleName = 管理员) Response.Redirect(/Admin/index.aspx); else string code = yanzhengtext.Text; /获取验证码 string user_name = nametext.Text;/ string user_password = CustomersManage.en(passwordtext.Text); 24 if (Request.CookiesCheckCode.Value = code) Customers uis = new Customers(); uis = CustomersManage.getcusInfoByName(user_name); if (nametext.Text = uis.Username) Response.Redirect(index.aspx); .2 修改密码修改密码 用户登录系统后就能修改密码。修改时除需要输入用户名和旧密码,另外 还需要对新密码进行确认。提交后自动保存到数据库中。 图 4-2 修改密码界面 代码如下: Customers users=new Customers(); if (users != null) this.usernametext.Text = users.Username; if (Page.IsValid)/点击修改事件 string newPwd = this.newpassword.Text.Trim(); 25 string message = CustomerManager.ModifyPwd(newPwd, user.UserID); Response.Write(alert( + message + ); /密码判断 string pwd = this.oldpassword.Text; if (pwd.Equals(users.Password) args.IsValid = true; else args.IsValid = false; 4.24.2 用户管理用户管理 网站安全对于任何一个电子商务网站的重要性是不言而喻的,在网络图书销 售系统中,通过用户管理来验证用户,不在数据库中存储明文的密码等方法来 提供用户管理的安全性。 .1 主界面主界面 系统列出当前所有用户的基本信息,可以进行删除用户功能,并提供修改 操作的链接。管理员还可以按照角色和用户名进行分类和精确查询。 26 图 4-3 主界面 .2 修改用户角色及备注信息修改用户角色及备注信息 管理员通过主页面的链接,进入修改页面,修改用户的角色及备注信息。 图 4-4 用户修改资料界面 代码如下: protected void btnModify_Click(object sender, EventArgs e) Customer u = new Customer (); u.UserID = int.Parse(Request.QueryStringcustomerId .ToString(); Roles role = Roles(); role.RoleID = 27 int.Parse(this.ddlRoleselect.SelectedValue.ToString(); u.Role = role; u.UserName = lblUsername.Text; u.Remark = txtremark.Text; CustomerManager.ModifyRemark(u); Response.Write(alert(修改成功);); .3 我的个人信息及更新我的个人信息及更新 显示当前登录用户的基本信息,并可以根据需要进行相应的更新操作。 图 4-5 用户个人信息界面 具体代码如下: protected void btnOk_Click1(object sender, EventArgs e) Customer user = (Customer Sessionuser;/获取登陆用户的 信息 user.UserName = this.txtusername.Text; user.RealName = txtrealname.Text; user.Remark = txtremark.Text; user.Phone = txtphone.Text; 28 user.CreateDate = System.DateTime.Now.ToString(); user.Addr = txtaddr.Text; CustomerManager.ModifyUser(user); Response.Write(alert(修改用户信息);); 4.34.3 图书管理图书管理 .1 添加图书添加图书 为管理员提供添加图书的功能,可以将本地的图书各项信息中,存入数据 库。 图 4-6 添加图书界面 代码如下: Books bo = new Books(); bo.BookName = booknametext.Text.Trim(); bo.Author = authortext.Text.Trim(); bo.Photo = Image1.ImageUrl; bo.ISBN = isbntext.Text.Trim(); bo.Present = pretext.Text.Trim(); bo.Subject = titletext.Text.Trim(); bo.Price = float

温馨提示

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

评论

0/150

提交评论