1、分类号 郑州电力高等专科学校毕 业 设 计(论 文)题 目 Market 网上商城购物系统并列英文题 Market Online Sales System系 部 电子信息系 专业 计算机应用技术 姓 名 李蓓蓓 班级 计算机 0801 指导教师 张慧丽 职称 讲师 论文报告提交日期 2011 年 6月 8日 郑州电力高等专科学校摘要 随着 21世纪的到来,信息化时代已经向我们走来,这个时代的最重要的标志就是计算机的广泛应用。如今社会上计算机应用已经达到非常普及的程度,随处都可以见到计算机的身影。我们也熟悉了在社会各处遇见它们的环境,家庭娱乐,学校的机房,金融场所,以及到处可见的网吧,计算机如水
2、银般无孔不入。近年来,随着网络技术和 Internet的迅速发展,基于Browser/Server结构的 Web应用,因其具有易用性、通用性和良好的可扩展性等优点而发展迅速,正逐渐成为实现企业管理信息系统的主流技术。而开发一个 Web应用系统是一项浩大的工程,要求设计者能够提出合理的系统架构。合理的系统架构可以减少开发及维护系统所用的资源,提升工作效率。因此,在 Web企业级应用系统开发过程中,设计模式的选定和应用系统架构的设计是一个重要环节。本系统运用平时所学 ASP.NET一些基本技术,自定义控件,ADO.NET技术,实现了 market网上购物商城的前台页面浏览,用户注册登录,用户下订单
3、购物,购物车,后台的用户、物流、订单等管理的功能。达到了毕业设计的要求,同时锻炼了自己的动手能力。Abstract With the advent of the 21st century, information age has come to us, this era is the most important symbol of the extensive application of computers. Now the community has reached a very popular computer application degree, the computer can b
4、e seen everywhere on the scene. We are also familiar encounter them everywhere in the social environment, family entertainment, school room, financial sites, and Internet cafes are everywhere, as all-pervasive computer such as mercury. In recent years, with the network technology and the rapid devel
5、opment of Internet-based Browser / Server structure of Web applications, because of its ease of use, versatility and good scalability advantages of the rapid development of the enterprise is becoming a management information mainstream system. The development of a Web application system is a massive
6、 undertaking, requiring designers to a reasonable system architecture. Reasonable system architecture can reduce development and maintenance of the system resources used to enhance work efficiency. Therefore, in the Web enterprise application development, design patterns and application of selected
7、system architecture design is an important part. The system usually learned using some basic techniques ASP.NET, custom controls, ADO.NET technology to realize the future of online shopping mall market page views, user registration, login, user order shopping, shopping cart, the background of the us
8、er, the logistics , order management functions. Meet the design requirements for graduation, while exercising their practical ability 目录第一章 我国电子商务的现状和发展前景 .- 1 -第二章 系统需求分析 .- 5 -2.1 系统功能需求 - 5 -2.2 系统设计思路 - 6 -2.2.1 功能设计 - 6 -2.2.2 结构设计 - 7 -第三章 数据库设计 - 9 -3.1 数据库各表关系图 .- 9 -3.2 部分表字段设计及注释 .- 9 -第四章
9、 系统实现主要技术介绍 .- 12 -4.1 ASP.NET 内置对象 .- 12 -4.2 ASP.NET 自定义用户控件 .- 15 -4.3 ADO.NET- 16 -第五章 系统部分功能展示及其实现代码 - 21 -5.1 部分界面展现 - 21 -5.2 新用户注册和用户登陆 - 23 -5.3 后台管理功能 - 28 -5.4 随机产生验证码代码 .- 30 -5.5 数据访问核心类部分代码 .- 31 -第六章 总结 .- 35 -参考文献 .- 36 -附录 - 37 -Market 商城购物网站- 1 -第一章 我国电子商务的现状和发展前景电子商务作为现代服务业中的重要产业,
10、有“朝阳产业、绿色产业”之称,具有“三高” 、 “三新”的特点。 “三高”即高人力资本含量、高技术含量和高附加价值;“三新”是指新技术、新业态、新方式。人流、物流、资金流、信息流“四流合一”是对电子商务核心价值链的概括。电子商务产业具有市场全球化、交易连续化、成本低廉化、资源集约化等优势。电子商务按照参与主体和客户的不同,可分为多种形式,但目前看,B2B、B2C、C2C 是主要形式,其中 B2B是最主要的应用形式。按照贸易主导主体,可分为销售方控制型、购买方控制型和中立第三方控制型。(一)全球电子商务发展概况纵观全球电子商务市场,各地区发展并不平衡,呈现出美国、欧盟、亚洲“三足鼎立”的局面。美
11、国是世界最早发展电子商务的国家,同时也是电子商务发展最为成熟的国家,一直引领全球电子商务的发展,是全球电子商务的成熟发达地区。欧盟电子商务的发展起步较美国晚,但发展速度快,成为全球电子商务较为领先的地区。亚洲作为电子商务发展的新秀,市场潜力较大,但是近年的发展速度和所占份额并不理想,是全球电子商务的持续发展地区。全球 B2B电子商务交易一直占据主导地位,2002 年至今,呈现Market 商城购物网站- 2 -持续高速增长态势,2007 年全球 B2B交易额达到 8.3万亿美元,预计在未来几年将保持 40%以上的增长率,到 2010年 B2B交易额将达到 26万亿美元,比 2002年增长 30
12、多倍。(二)我国电子商务发展概况1、我国电子商务的现状我国电子商务发展呈现典型的块状经济特征,东南沿海属于较为发达地区,北部和中部属于快速发展地区,西部则相对落后。自 2005年以来,我国电子商务市场交易额稳定增长,2007 年我国电子商务市场规模突破 17000亿元。未来 3年,仍是我国电子商务投资规模持续增长和爆发的时期,我国电子商务投资市场将迎来新一轮的发展高潮。一方面,2007 年国家“十一五”电子商务发展规划的颁布标志着政府推动电子商务的总体布局已经形成;另一方面,电子商务在企业的应用成效以及对经济、社会发展的推动作用日益明显。2007年我国 B2B 电子商务交易额约为 12500亿
13、元,比 2006年增长 25.5%。目前 B2B 市场的集中度较高,在综合类网站中,阿里巴巴已占近乎 7成份额。2007 年我国 B2C网站总收入约为 52.2亿元,同比增长 33.5%。B2C 是传统企业开展电子商务的主要形式,随着网络购物环境的好转以及企业(特别是大中型企业)电子商务化程度的提升,在总体规模上 B2C 将会有一个长足的发展,并成为未来网购的主流。2007 年我国 C2C交易额约为 410.4亿元,同比增长90%;C2C 是目前我国网购的主要形式,但普及率还较低,不到网民Market 商城购物网站- 3 -总数的 3成。2、我国电子商务发展趋势(1)电子商务的发展环境将不断完
14、善,发展动力持续增强随着市场经济体制进一步完善,推进经济增长方式转变和结构调整的力度继续加大,发展电子商务的需求将会更加强劲。电子商务将被广泛应用于生产、流通、消费等各领域和社会生活的各个层面。这将促使全社会电子商务的应用意识不断增强,有关电子商务的政策、法律、法规将不断出台,电子商务发展的政策法律环境将不断完善。同时,也促使物流、信用、电子支付等电子商务支撑体系建设更全面的展开,从而使得电子商务发展的内在动力持续增强。(2)电子商务应用将达到新的广度和深度随着电子商务发展“十一五”规划的实施,电子商务在国民经济各部门中将得到进一步的推广和应用。电子商务交易额呈现稳定持续增长态势;在区域发展方
15、面,长三角、珠三角和环渤海等东南沿海的电子商务在继续高速增长的同时,辐射力也逐渐提高,将促进东部和中西部地区之间的协调发展;在企业应用方面,在国家、各级政府的政策引导下,在电子商务服务业的协助下,将促进企业由非支付型电子商务向支付型电子商务发展、协同电子商务的发展,深化企业应用水平。(3)电子商务与产业发展深度融合不断加大,加速形成经济竞争新态势在综合性电子商务网站已经占据综合类 B2B领域绝大部分市场Market 商城购物网站- 4 -的情况下,越来越多的行业电子商务网站已经在综合网站市场之外寻求专业化细分领域的发展。电子商务正在与传统产业进行深入的融合,两者相互促进,协调发展。(4)电子商
16、务服务业蓬勃发展,逐步成为国民经济新的增长点随着企业供应链电子商务、国际电子商务的发展,将带动电子商务服务业的发展,围绕电子商务服务形成的从低端技术环节到中端支撑环节再到高端应用环节的电子商务服务链在我国结点饱满,一个全新视角的电子商务服务业群正在形成,将成为未来国民经济新的增长点。(5)移动电子商务正成为电子商务新的应用领域 2006年以来,移动通讯商,密切关注移动商务企业市场,中国移动和银联联手推出的“手机钱包” ,完成移动电子商务付费的个性化服务。基于移动支付的支持,移动电子商务正成为电子商务新的应用领域。Market 商城购物网站- 5 -第二章 系统需求分析2.1 系统功能需求21世
17、纪以来,人类经济高速发展,人们生活发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方式越来越不适应现在社会的发展。许多人还停留在以前的逛街去买需要的用品,网上商城为大家带来了极大地方便。我所开发的 market网上商城购物系统基本上实现了在线购物的需求,采用 Microsoft Visual Studio 2010作为开发平台,使用SQLServer2005作为后台数据库。本网上书店在线销售系统是基于B/S架构,本网站系统的开发主要是方便用户足部出户就可以购买商品,减少供应商店面费用。本系统共有三类用户:访客:指没有登陆权限(主要指网络用户) ,以匿名
18、用户的身份访问系统网站。此类用户主要有浏览系统信息、查看商品信息,注册成为会员。把本网站设为首页,添加到收藏夹,联系管理员等操作。浏览的内容包括:商品信息、商品分类信息。会员:这类用户拥有游客的所有权限;会员可以注册成为会员,并根据会员 ID和密码登陆系统,登陆之后可以对更改自己的信息但会员 ID做为数据库表主键不能修改。会员登陆后可以查看商品信息,查看各种分类商品信息,将商品添加到购物车中,修改购物车中商Market 商城购物网站- 6 -品数量,或是删除某些不想要的商品。系统管理员:系统管理员主要负责管理着系统后台信息;主要有订单管理,商品管理,会员管理,物流管理和系统管理。订单管理有未确
19、认订单和已确认订单管理,未付款订单。商品管理主要有商品添加和商品管理,商品类别添加和商品类别管理。会员管理主要有添加管理员和管理管理员,管理会员。物流系统主要有支付方式添加和管理,配送方式添加和管理,配送地点添加和管理。系统管理主要是上传管理。因此,本系统主要功能是对商品进行管理规划,方便会员购买。2.2 系统设计思路2.2.1 功能设计商城前台:功能强大,操作方便。前台作为与用户直接交互的界面,在考虑功能的同时,也考虑了操作的简洁和方便,目的是让大多数不懂电脑操作的客户也能轻松地享受网上购物带来的极大方便。主要包括以下几个模块: 商品信息和类别展示 用户注册和登录 已登录用户信息修改 购物车
20、管理 网站活动信息书店后台:本系统后台在考虑书店管理操作简便的同时,提Market 商城购物网站- 7 -供了强大的书店管理模式。主要包括以下几个模块: 订单管理 商品管理 用户管理 物流管理 系统管理2.2.2 结构设计 参与者汇总游 者:查看商品信息和注册成为会员。会 员:查看商品信息和购买商品,修改个人信息等。管理员:管理商品信息,管理用户信息等。 前台流程:用户登录用户登陆用户注册用户登录查看图书信息添加图书到购物车支付 后台流程:管理员登录订单管理、图书管理、用户管理、图片管理退出网上购物系统为顾客提供一个类似于超级市场的网络界面。通过网络界面,用户登录后执行各种操作,没有注册的用户
21、可以查找商品信息,查看首页面的最受欢迎商品等信息。结构设计简述:开始我本想用三层结构搭建网站,但是在进一步考虑之后发现系统的逻辑比较简单,并不一定要将业务逻辑单独Market 商城购物网站- 8 -分离出来。于是将三层合并为两层开发,即界面层和业务逻辑层合二为一,将界面层和业务逻辑层归为一层,业务逻辑的处理放在页面的后台代码中,这样做的好处之一是简化开发过程,之二是加快数据访问速度。当然这样做也带来了一些不便,首先是开发层次不如三层那样清楚,界面数据和业务逻辑混杂,然后是给网站的后期维护以及修改带来一定的不便,不如三层结构修改起来容易。由于作者在毕业设计期间还在专心准备专升本的课程学习,加上时
22、间比较紧促,权衡利弊,选择将三层合并为两层开发。Market 商城购物网站- 9 -第三章 数据库设计3.1 数据库各表关系图图 3-13.2 部分表字段设计及注释表 3-1tb_GoodsInfo字段名 数据类型 长度 主外键 字段说明 备注GoodsID Bigint 主键 商品标识 非空ClassID Bigint 外键 商品类型标识 非空GoodsName Varchar 50 无 商品名称 可空GoodsIntroduce Ntext 无 商品介绍 可空GoodsBrand Varchar 50 无 品牌 可空GoodsUnit Varchar 10 无 单位 可空GoodsWeig
23、ht Float 无 重量 可空GoodsUrl Varchar 50 无 图片链接 可空MarketPrice Float 无 单价 可空MemberPrice Float 无 会员价 可空Isrefinement Bit 无 是否精品 可空IsHot Bit 无 是否热销 可空AddDate Datetime 无 添加日期 可空IsDiscount Bit 无 是否打折 可空商品信息表:在添加商品和在前台显示商品详细信息时用到该表,实现了商品的添加和显示详细信息的功能。Market 商城购物网站- 10 -表 3-2tb_Class字段名 数据名 长度 主外键 字段说明 备注ClassID
24、 Bigint 主键 类型标识 非空ClassName Varchar 50 无 类型名称 可空CategoryUrl Varchar 50 无 图片链接 可空商品类型表:主要用于在添加商品类别的时候用到该表,把添加的商品类型存储到该表中,完成商品类型的添加和调用功能。表 3-3 tb_OrderInfo字段名 数据名 长度 主外键 字段说明 备注OrderID Bigint 主键 订单标识 非空OrderDate Datetime 无 订单日期 可空GoodsFee Float 无 货品总额 可空TotalPrice Float 无 总金额 可空ShipFee Float 无 运费 可空Sh
25、ipType Int 无 运送类型标识 可空PayType Int 无 支付类型 可空MemberID Int 外键 会员标识 可空ReceiverName Varchar(50) 无 收货人姓名 可空ReceverPhone Varchar(50) 无 收货人电话 可空IsConfirm Bit 无 是否确认 可空IsPayment Bit 无 是否付款 可空IsConsignment Bit 无 是否发货 可空IsPigeonhole Bit 无 是否归档 可空ReceiverPostCode Char 10 无 邮编 可空ReceiverAddress Varchar 200 无 地址
26、可空ReceiverEmails Varchar 50 无 邮箱 可空订单信息表:主要在管理订单的时候用到该表完成订单的管理功能。表 3-4 tb_Member字段名 数据名 长度 主外键 字段说明 备注MemberID Bigint 主键 会员标识 非空Name Varchar 50 无 用户名 可空Sex Bit 无 性别 可空PassWord Varchar 50 无 密码 可空TrueName Varcahr 50 无 真实姓名 可空Questions Navarchar 50 无 验证问题 可空Answers Navarchar 50 无 答案 可空Phonecode Varchar
27、 20 无 电话号码 可空Emails Varchar 50 无 邮箱 可空City Varchar 50 无 所在城市 可空Address Varchar 200 无 地址 可空PostCode Char 10 无 邮编 可空Market 商城购物网站- 11 -AdvancePayment Float 无 消费 可空LoadDate Datetime 无 登陆日期 可空会员信息表:该表存储了注册的会员信息,在会员登录和合结账的时候会调用到该表。表 3-5tb_Admin字段名 数据名 长度 主外键 字段说明 备注AdminID Bigint 主键 管理员标识 非空Admin Varchar
28、 50 无 用户名 可空PassWord Varchar 50 无 密码 可空管理员信息表:主要用于后台管理员登录的时候调用该表完成管理员的登录功能。Market 商城购物网站- 12 -第四章 系统实现主要技术介绍4.1 ASP.NET内置对象下面是 ASP.NET中常用对象的介绍及用法(1) Request 对象:将用户端输入的数据传递给服务器。(2) Response 对象:向客户端输出数据。Response 和Request 可以说是一对孪生兄弟,一个负责收集,另一个负责输出。(3) Application 对象:可以供全体应用程序使用。使用Application 对象不仅可以在给定的
29、应用程序的所有用户之间共享,而且可以在服务器运行期间持久地保存数据。(4) Session 对象:供特定用户会话使用。Session 对象与Application 对象的作用相近,使用 Session 对象可以存储特定的用户会话所需的信息。Application 与 Session 的区别在于,网上的用户都可以使用 Application 的对象,而 Session 只是针对一个特定的客户而已。(5) Server 对象:提供对服务器上的方法和属性的访问,其中大多数方法和属性是作为实用程序的功能服务的。最常用的方法是创建 ActiveX 组件的实例(Server.CreateObject)。其
30、他方法用于将 URL 或 HTML 编码成字符串,将虚拟路径映射到物理路径以及设置脚本的超时期限。QueryString 集合Market 商城购物网站- 13 -QueryString 可以获取标识在 URL 后面的所有返回变量及其值。在搜索引擎里面经常用这种方法。例如,当用户端送出如下请求时,QueryString 将会得到 name 和 age 两个变量的值。在上面的例子中,href=queryString.asp指出了链接的地址, “?”后面有两个变量 name 和 age,用 Command 对象常用的方法有 ExecuteReader方法、ExecuteScalar()方法和 Ex
31、ecuteNonQuery()方法;插入数据可用 ExecuteNonQuery()方法来执行插入命令。 3、 DataReader 类许多数据操作要求你只是读取一串数据。DataReader 对象允许你获得从 Command对象的 SELECT语句得到的结果。考虑性能的因素,从 DataReader返回的数据都是快速的且只是“向前”的数据流。这意味着你只能按照一定的顺序从数据流中取出数据。这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用DataSet。 4、 DataSet 对 象Market 商城购物网站- 19 -DataSet对象是数据在内存中的表示形式。它包括多个D
32、ataTable对象,而 DataTable包含列和行,就象一个普通的数据库中的表。你甚至能够定义表之间的关系来创建主从关系(parent-child relationships) 。DataSet 是在特定的场景下使用帮助管理内存中的数据并支持对数据的断开操作的。DataSet 是被所有Data Providers使用的对象,因此它并不像 Data Provider一样需要特别的前缀。 5、 DataAdapter 类某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。DataAdapter 通
33、过断开模型来帮助你方便的完成对以上情况的处理。当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,DataAdapter 填充(fill)DataSet 对象。DataAadapter 包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。另外,DataAdapter 包含对数据的 SELECT、INSERT、UPDATE 和DELETE操作的 Command对象引用。你将为 DataSet中的每一个Table都定义 DataAadapter,它将为你照顾所有与数据库的连接。所有你将做的工作是告诉 DataAdapter什么时候装载或者写入到数据库。 6、
34、 DataTable 类DataTable 是一个数据网 格 控件。它可以被应用在 VB 和 ASP Market 商城购物网站- 20 -上。它无须代码就可以简单的绑定数据库。它具有微 软 风格的用户界面。7、 ADO.NET 是 与 数 据 源 交 互 的 .NET 技 术 。 有 许 多 的 Data Providers, 它 将 允 许 与 不 同 的 数 据 源 交 流 取 决 于 它 们 所 使用 的 协 议 或 者 数 据 库 。 然 而 无 论 使 用 什 么 样 的 Data Provider,你 将 使 用 相 似 的 对 象 与 数 据 源 进 行 交 互 。 SqlCo
35、nnection 对 象 管理 与 数 据 源 的 连 接 。 SqlCommand 对 象 允 许 你 与 数 据 源 交 流 并 发 送命 令 给 它 。 为 了 对 进 行 快 速 的 只 “向 前 ”地 读 取 数 据 , 使 用SqlDataReader。 如 果 想 使 用 断 开 数 据 , 使 用 DataSet 并 实 现 能进 行 读 取 或 者 写 入 数 据 源 的 SqlDataAdapter。Market 商城购物网站- 21 -第五章 系统部分功能展示及其实现代码5.1 部分界面展现(1)前台主界面图 5-1(2)购物车Market 商城购物网站- 22 -图 5
36、-2(3)后台首页图 5-3(4)订单管理Market 商城购物网站- 23 -图 5-4(5)物流管理图 5-5(6)普通会员管理Market 商城购物网站- 24 -图 5-6(7)管理员管理图 5-75.2 新用户注册和用户登陆(1)前台登陆图 5-8这里的登陆界面是用自定义用户控件实现的,其后台代码如下:登陆按钮事件:protected void btnLoad_Click(object sender, EventArgs e)Session“UID“ = null ;Session“Username“ = null ;if (txtName.Text.Trim() = “ | txt
37、Password.Text.Trim () = “)Market 商城购物网站- 25 -Response.Write(“alert(登录名和密码不能为空!);location=javascript:history.go(-1);“);elseif (txtValid.Text.Trim() = lbValid.Text.Trim()int P_Int_IsExists = uiObj.UserExists(txtName.Text.Trim(), txtPassword.Text.Trim();if (P_Int_IsExists = 100)DataSet ds = uiObj.Retur
38、nUIDs(txtName.Text.Trim(), txtPassword.Text.Trim(), “UserInfo“);Session“UID“ = Convert.ToInt32(ds.Tables“UserInfo“.Rows00.ToString();Session“Username“ = ds.Tables“UserInfo“.Rows01.ToString();Response.Redirect(“index.aspx“);elseResponse.Write(“alert(您的登录有误,请核对后再重新登录!);location=javascript:history.go(-
39、1);“);elseResponse.Write(“alert(请正确输入验证码!);location=javascript:history.go(-1);“); (2)会员注册Market 商城购物网站- 26 -图 5-9保存按钮代码:protected void btnSave_Click(object sender, EventArgs e)if (txtPostCode.Text.Trim() = “ location=javascript:history.go(-1);“);else bool P_Bl_Sex;if(Convert.ToInt32(ddlSex.SelectedItem.Value.Trim()=1)P_Bl_Sex =true ;else P_Bl_Sex =false ;G_Int_MemberID = uiObj.AddUInfo(txtName.Text.Trim(), P_Bl_Sex,