PG电子电子商务网站设计与实现---毕业参考论文电子商务网站设计与实现---毕业参考论文第PAGEII页共NUMPAGES35页目录TOC\o1-3\h\z\uHYPERLINK\l_Toc327457624第一章引言PAGEREF_Toc327457624\h1HYPERLINK\l_Toc3274576251.1课题背景PAGEREF_Toc327457625\h1HYPERLINK\l_Toc3274576261.2研究目标PAGEREF_Toc327457626\h1HYPERLINK\l_Toc3274576271.3论文各部分的
PAGEREF_Toc327457627\h1HYPERLINK\l_Toc327457628第二章系统设计PAGEREF_Toc327457628\h3HYPERLINK\l_Toc3274576292.1需求分析PAGEREF_Toc327457629\h3HYPERLINK\l_Toc3274576302.2系统架构PAGEREF_Toc327457630\h8HYPERLINK\l_Toc3274576312.3系统数据库设计PAGEREF_Toc327457631\h11HYPERLINK\l_Toc3274576322.4系统模块组成PAGEREF_Toc327457632\h15HYPERLINK\l_Toc3274576332.5类别模块实现PAGEREF_Toc327457633\h23HYPERLINK\l_Toc327457634第三章系统实现结果PAGEREF_Toc327457634\h27HYPERLINK\l_Toc3274576353.1产品分类管理设计PAGEREF_Toc327457635\h28HYPERLINK\l_Toc3274576363.2产品管理设计PAGEREF_Toc327457636\h28HYPERLINK\l_Toc3274576373.3订单管理设计PAGEREF_Toc327457637\h28HYPERLINK\l_Toc3274576383.4用户管理模块PAGEREF_Toc327457638\h29HYPERLINK\l_Toc327457639第四章总结PAGEREF_Toc327457639\h30第PAGE3页共NUMPAGES35页第一章引言课题背景电子商务网站改变了了人们的生活方式,是当今e时代便捷人们生活的一项伟大创举。在生活节奏越来越快的今天,人们对购物便捷的需求也越来越强烈,而网上购物正是给人们带来一种轻松,让每个人享受购物的快乐和冲浪的乐趣一个网络电子网站可以实现的功能非常强大,例如:淘宝集市除了基本的产品信息发布和交易功能之外,还可分析客户购买行为,列出相关商品,购买后的评价系统,以及便捷的交易支付系统,还有跟后台服务系统及后台物流系统的集成。当然也可以做的功能很简单,例如:现在很多的公司只做到商品目录介绍,连采购车的系统都没有,下订单还要通过电子邮件来完成。当然我觉得做的电子商务网站分为两部分:一是前端的购物系统,二是后端的管理系统。在整个系统中的核心技术为购物和结帐系统,但最为难的技术为安全技术,在整个系统中我们需要进行SSL加密,数据库加密,和网页间数据传递加密以及用户和密码加密。研究目标从企业以往的服务管理模式提供的一些服务的方式来看,有些传统的方法已经落伍且非常耗费人力和时间,为了提高员工工作效率,加速资金周转、降低各项成本及改善服务质量,必须开发一个在线电子商务系统。这是本网站设计的核心部分。论文各部分的内容论文共分为两大部分:第一部分需求分析:本文作者通过目前的时代背景下、从企业的需求出发,阐述电子商务的必要性和必然性、电子商务对目前企业和人们生活的影响;然后通过现有技术手段,来如何实现这样一个电子商务:从系统的架构、数据库的设计、整体界面及模块的设计。以及设计过程上的思路及应用技术做出介绍第二部分是对目前已完成的系统做一些展示,并挑出2-3个模块来列举模块的实现过程及实现方法,以及实现过程中的设计思路。第PAGE30页共NUMPAGES35页系统设计需求分析需求分析是一种软件工程活动,它在系统级需求工程和软件设计间起到桥梁的作用。需求分析需要开发人员准确理解用户的要求,进行细致的调查分析,将客户非形式的需求陈述转化为完整的需求定义,再由定义转换到相应的形式功能规约(需求规格说明)的过程。它通过详细调查现实世界要处理的对象(组织、部门、企业等)、充分了解原系统(手工系统或计算机系统)的概况和发展前景、明确客户的各种需求、收集支持系统目标的基础数据及其处理方法、确定新系统的功能和边界来实现。电子商务由用户使用商家或企业提供的平台、选购产品、生成订单、以及最后通过物流到达用户手中的过程在对电子商务网站进行调研分析时,首先对电子商务所涉及的领域作了总体的了解,为在后面的调研分析做好充足的准备。通过对其各个主要流程模块详细深入的调查后,发现作为一个网站系统,各个部门最基本的功能都是通过网络对外宣传,使得有兴趣的客户可以及时获得他们想要的信息,以此来吸引更多的客户加入。从企业以往的服务管理模式提供的一些服务的方式来看,有些传统的方法已经落伍且非常耗费人力和时间,为了提高员工工作效率,加速资金周转、降低各项成本及改善服务质量,必须开发一个在线电子商务系统。这是本网站设计的核心部分。小型电子商务网站开发目的和意义我国目前网上购物分析以下是根据CNNIC(中国互联网络信息中心)公布的中国B2C电子商务发展
)图2-1国内网上购物的原因调查选择网上购物的原因从上面的图可以看出网上购物选择节约时间和操作方便的分别占46。7%和44。2%,这说明随着生活节奏的加快,人们越来越希望拥有简单快捷的购物方式。由此可见,电子商务网络有着很大的市场。21世纪是网络时代。网络技术的飞速发展,极大地影响了商业交易中传统的交易方式和流通方式。企业随着业务的不断扩大,企业的规模也不断扩大,迫切需要建立相应的电子商务网络。利用电子商务的优势同现有销售模式和流通渠道相结合,扩大消费市场,为企业的再发展带来新的商机,也为各地消费者提供便利,而且降低商业成本。相对于中小企业来讲,由于不涉及到大型的数据库和保密安全等,网站的技术要求是被降低了,但建站的指导思想是不变的,网站便要以营销为目的,宣传其产品,让客户更直观的了解产品的功能和特性.目前所讲的网络营销在职能上可分为两类事情。如何营销网络产品或服务。例如,如何销售电子信箱、电子小组、网站会员登记等等,这里所要作的网络营销,网络本身是产品,目标顾客是网民,即如何来营销网络的事情。如何使用网络来辅助传统企业来做好营销工作。在这一类的网络营销中,产品还是企业所生产的产品,目标顾客的其中一部分或大部分是网民,即网络只是企业营销的一种工具。两类网络营销的很多方法相同或类似,但却不可完全等同。对于企业来说,企业网站是用来配合传统企业进行第二类网络营销的重要工具,网络是技术,营销才是关键。国内网上电子商务网站现状综合性购物网站:卓越网、当当网是以图书起家,至今已经成为中国网上零售的领先者。当当网是全球最大的综合性中文网上购物商城,成立以来,当当网每年均保持100%高速成长,2009年成长率高达120%。有数据显示:2008年当当网年销售额达到16亿元。并且李国庆强调,三年内将持续保持三位数增长,并终将占领市场近三成份额。IT数码购物网站:自2004年创立至2008年,京东商城的年销售额每年都在大幅度的增长中。2008年销售额接近14亿元,年复增长率高达340%,市场份额从2007年的8.1%飙升至2008年的18%,一下子将当当、卓越亚马逊甩在后面,登上B2C行业头把交椅。2009年3月,京东单月销售额超过2亿元;4月9日,京东单日订单量突破了1.6万份,销售额过千万。2009年京东的销售额达到40亿元。服装服饰:PPG的迅猛崛起,唤醒了人们对于服装B2C的野性呼唤。在2007年-2008年初,曾有40多家男装B2C相继推出,此次混战不仅包括原卓越的陈年等一批B2C干将,也包括报喜鸟等知名传统品牌,更包括大量小规模的厂家力量等。直到2008年中,vancl凡客诚品不仅在声势、品牌、销售上全方位超越PPG。VANCL正式成立于2007年10月18日,2007年的营业收入为112万元,2008年飙升至3亿元,预计2009年能达到100%的增长。VANCL目前每天有2万订单,销售服装5万件左右。。亚洲最大网络零售商圈:淘宝网——亚洲最大、最安全的网上交易平台,提供各类服饰、美容、家居、数码、话费/点卡充等等,与人们生活所需息息相关商品、服务。淘宝网现在业务跨越C2C(个人对个人)、B2C(商家对个人)两大部分。截止2008年12月31日,淘宝网注册会员超9800万人,覆盖了中国绝大部分网购人群;2008年交易额为999.6亿元,占中国网购市场80%的份额。淘宝网8月20日公布了截至2009年6月30日的上半年业绩报告。报告显示,2009年上半年淘宝实现交易额809亿元,逼近去年全年999.6亿成交。对比国家统计局公布的上半年社会消费品零售总额58711亿元。综上可知,我国的网购产业在较短的十几年间得到了较大幅度的发展,这种归属于电子商务类的产业随着科技的发展进步逐渐深入人心。目前我国互联网上网人数已达5亿,目前全球网购用户数量已经超过1.37亿。网购,正在展现出巨大的市场增长潜力,正在迅速成长成为一种消费时中国时尚。是强大的市场需求,驱动并成就了“网购消费时尚”。小型电子商务网站应该的功能一个电子商务网站应该提供以下功能:1.产品分类的增加,查询和修改功能。产品需按照一定的方式实现分类;2.分类中产品的增加、修改、删除、查询功能;3.产品展示功能。当管理员建好产品的分类和各个分类中的产品后,可以将产品在前台按照一定的方式展示给用户。4.购物车功能。当用户选定一种产品后,就可以把这种产品放置到购物车中。需要注意的是,在购物车中的产品并不是用户最终会得到的产品,只是一个购物的意向。5.订单的生成、查询功能。当用户挑选好产品之后,可以把购物车中的产品形成一张订单提交给系统。同时应该提交用户的电话和送货地点。用户提交订单后。通过订单查询程序来查询自己订单的处理情况。6.订单处理功能。电子商务网站一般采用网上付款和快递的方法进行交易,当管理员得到一个订单并收到汇款后,可以开始处理订单。首先PG电子最新网站入口,管理员要看用户订购的产品是否有货,就可以把这个订单的实际交付数量修改为用户的订购数量。如果不能够满足用户的要求,应该输入相关的原因,并将订单处理置于“作废”状态。接下来是物流,送货多采用快递方式,当用户订购的产品快递出以后,就可以把订单的状态改为“已成功”。当然本系统简化了这一系列属于物流管理方面的操作过程,而直接由管理员统一进行这些状态的修改设置将功能详细表述如下普通用户可以通过系统浏览商品(按类别)普通用户可以通过系统搜索商品(按类型、价格、日期竺)普通用户可以通过系统下订单(享受市场价)普通用户可以注册成为系统会员(免费注册)会员可以浏览和检索商品会员可以下订单(享受会员价)会员可以浏览自己下过的订单会员可以管理自己的信息(自服务系统)修改密码修改送货地址修改联系方式会员可以分级别不同级别会员享受不同等级的优惠通过购物的金额确定级别管理员通过后台进行会员管理会员浏览会员历史订单浏览会员删除指定会员级别管理员通过后台进行产品分类的管理浏览产品分类添加产品分类修改产品分类删除产品分类管理员通过后台进行产品管理新增产品产品线架产品下架产品销量统计产品搜索产品删除产品修改管理员通过后台进行订单的管理订单查询修改订单状态订单搜索订单跟踪订单提醒系统架构逻辑架构JSP+JAVABEAN+DATABASEJSP负责表现:JAVABEAN负责业务逻辑使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。DATABASE负责持久保持数据物理架构Web服务器一台(32bit)配置:CPUCore22.93G,硬盘320G,内存2G,OS::Windows2003专业版DataBase服务器一台配置:CPUCore23.9G,硬盘1T,内存8G,OS:Windows2003专业版技术解决方案程序开发工具(Eclipse):Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。WERSERVER:Tomcat5.5Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。数据库DATABASE:MySQLMySQL是一个小型关系型数据库管理系统。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL“结构化查询语言”。SQL是用于访问数据库的最常用
化语言。MySQL软件采用了GPL(GNU通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。开始用户登录用户管理产品分类产品管理订单管理失败重试成功已作废订单已成功订单处理中订单未处理订单图2.2.3-1数据处理流程图配置管理SCM(SoftwareConfigurationManagement)CVS:CVS是多个开发人员通过一个中心版本控制系统来记录HYPERLINK文件版本,从而达到保证文件同步的目的。CVS版本控制系统是一种GNUHYPERLINK软件包,主要用于在多人开发环境下的源码的维护JSPJSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立页所需要的功能AJAXAJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。通过AJAX,您的JavaScript可使用JavaScript的XMLHttpRequest对象来直接与服务器进行通信。通过这个对象,您的JavaScript可在不重载页面的情况与Web服务器交换数据。AJAX在浏览器与Web服务器之间使用异步数据传输(HTTP请求),这样就可使网页从服务器请求少量的信息,而不是整个页面,可使因特网应用程序更小、更快,更友好。JAVABEAN使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。系统相关技术:Browser/Server体系B/S结构的软件是相对传统的C/S结构而言的。C/S结构将程序分为两部分,一部分是由多个用户共享的信息与功能,这部分称为服务器端;另一部分是为每一个用户所专用,称为客户端。C/S结构应该具有这样的特征:客户端、服务器端都安装相应的软件,客户端、服务器端各完成相应的计算工作,服务器端保存数据库。而B/S结构应该具有如下特征:服务器端都安装相应的软件,客户端不安装任何软件(不需要维护)。客户端运行程序是靠浏览器软件(如IE,Netscape等)登陆服务器进行的。客户端在浏览器里完成一定的计算任务。Web数据库的访问方式在Internet上服务器访问数据库的访问方式有多种、如公共网关接口CGI,Web服务器专用API,Java语言的数据库访问接口JDBC。CGI是一个用于定义Web服务器与外部程序之间通讯方式的标准。CGI的主要优点是能运行在各种平台上,可以用任何语言编程,主要缺点是当浏览器向CGI程序发出请求时,CGI执行的是另一种独立于Web服务器的系统进程,占用了CPU的资源,当大量用户向服务器请求文件时,会严重消耗服务器的系统资源。Web服务器专用API是各Web服务器生产厂家为扩展自己的Web服务器功能而设置的接口。由于它和Web服务器紧密结合,使得它的运行速度更快、效率更高,但它不具备跨平台性。本系统采用的是微软的Web服务器IIS(InternetInformationServer),它的专用API是ISAPI。JDBC是JAVA语言的数据库访问接口,将JavaApplet嵌入在网页中,当客户浏览器向Web服务器发出请求时,Applet被下载到客户浏览器中运行,然后该Applet通过JDBC访问数据库。JDBC的数据库访问方式提供了高度的可扩充性和可移植性,但复杂的电子商务应用会导致Applet下载过大,从而影响了下载速度。系统数据库设计管理系统的数据流图数据流图(DFD)是描述信息流和数据从输入移动到输出时被运用的变换的图形化技术,它反映系统必须完成的逻辑功能,是一种功能模型。它是组织中信息运动的抽象,是在调研的基础上,从系统的科学性、管理的合理性、实际运动的可行性角度出发,将信息处理功能和彼此之间的联系自顶向下,逐层分解,从逻辑上精确地描述系统应具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向(外部实体)等项目。首先,分析系统的总体情况,划分系统边界,识别系统的数据来源和去处,确定外部实体从而得出系统的顶层数据流程图。把整个网站系统看成一个整体,分析这个整体与外界的联系。通过分析得出系统有管理员和客户这两个实体,系统的输入有两个来源,即管理员在对系统的维护更新过程中对系统所进行添加、删除或修改的数据和用户在与系统交互时输入的订单资料数据。系统的输出也有两个去向:一个是管理员在对系统录入信息后系统返回给管理员的信息和用户提交的订单;另一个是管理员对系统录入信息后,由浏览器输出到客户端的信息。其中管理员输入的信息和从客户浏览器上或管理员端显示的信息包括首页、关于我们、管理资讯、服务项目、招商代理、管理文库、资料下载、在线服务、管理论坛、人才招聘等,而订单信息是由客户端输入然后返回给客户端并提交给管理员的。系统的顶层流图如下:产品分类产品管理订单管理用户管理会员管理购物车订单查询产品查询产品展示数据库后台前台图2.3.1顶层数据流图在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。电子商务网站的主要对象是用户,所以必需建立用户表,包括用户的基本信息情况;用户的主要活动是对产品的购买,所以必需建立产品信息表;用户对产品的购买,选择所要的产品,首先得对产品进行搜索,所以我们把商品进行分类,建立产品类别表;最后用户提交订单,建立订单表;管理员是后台操作的用户,在此建立了管理员信息表。一般会员管理网络电子商店前台的基本功能。会员系统:基本会员注册、会员登录认证。商品陈列系统:商品模糊查询、商品详细数据介绍。添加商品到采购车、采购车内容的删除修改。订单查询系统:根据会员的登录查出会员历史订单及订单的详细信息。实现网络电子商店的程序运行的基本结构就是所谓的三层式结构,此种结构最主要的是将前台接口、商业对象及数据库独立分开,将此三者分开,程序运行起来有更大的灵活性,前台接口只负责数据的表现,至于商业对象就是负责将一些商业逻辑运算封装到对象,对象中运算方法则最主要是当作后台数据库与前台接口的桥梁,JSP也提供很简单的方法让您建立、修改及布置商业对象。至于数据库,最主要的功能就是存储数据,就像微软的产品来说最有名的前台数据库就是了MySQL,在此网络电子商务网站系统选择的数据库是MySQL。User用户表、字段设计User(用户)字段名字段类型说明主键IdInt序号/自动递增主键UsernameVarchar用户名PasswordVarchar密码PhoneVarchar电话AddrVarchar地址rdatedatetime注册日期Product产品表、字段设计Product(产品)字段名字段类型说明主键IdInt序号/自动递增主键nameVarchar产品名DescryVarchar描述NormalpriceVarchar市场价MemberpriceVarchar会员价Pdatedatetime上架日期categoryIDInt类别ID/引用Category表的idCagegory产品类型表、字段设计Cagegory(产品类别)字段名字段类型说明主键IdInt序号/自动递增主键nameVarchar分类名DescryVarchar描述pidVarchar父idSalesOrder订单抬头表、字段设计SalesOrder(订单抬头)字段名字段类型说明主键IdInt序号/自动递增主键UseridInt用户IDAddrVarchar送货地址odatedatetime下单时间StatusInt订单状态/0未处理1处理中2处理成功3作废SalesItem订单行项目表、字段设计SalesItem(订单行项目)字段名字段类型说明主键IdInt序号/自动递增主键productidInt产品IDUnitpriceVarchar单价Pcountdatetime数量orderidInt订单id/引用salesorder的ID系统模块组成系统分为前端的客户信息浏览及查询和后台管理两大部分:前台销售管理系统的用户是通过Internet访问网站的客户,后台管理系统的用户是通过Internet访问的后台管理员前台管理系统功能前台的客户信息浏览及查询功能:可直接登录上主页浏览电子商务网站对外发布的所有信息,包括企业本身的资料、对外服务部门的介绍、企业文化的宣传和特色及为客户介绍相关领域如其他服务业的相关信息。可直接从主页上即时浏览企业发布的最新新闻,以增进和客户的交流,提高工作的效率。通过点击主页上的链接,输入个人信息资料和必要的产品信息在线提交订单来订购产品。后台管理系统功能后台管理系统的页面将以加密的形式出现,只能由管理员及其赋予权限的用户登录,登录必须输入密码方可进入,以实现对本站点的全面维护及更新。进入后,页面会以网页的方式罗列出所有查询及处理客户填写的信息。管理员可从网页点击进入该信息处理页面,可以在这里对前台网站的内容进行更新,并支持对客户填写的信息增加、删除、修改以及对客户所发布信息的更新等操作,以使站点保持良好的运作状态,同时还可以根据客户的提交时间和IP地址进行索引与分析。在对酒店内部进行管理时,可通过为各个部门均分配具有一定权限的管理员来实现,此管理员分为一般用户和超级用户,使各个部门均能自主的对本部门的信息进行更新及发布本部门的最新通告等。因此,此管理系统是对整个网站的管理。系统组成模块及其特点综上所述,整个网站系统包括了以下功能模块:首页、产品分类、用户自助服务、购物车、订单管理。其中有的模块需以管理员的身份通过后台管理系统进行更新其功能特点包括:1.易用性好:操作简单、界面友好,控件式的页面布局,使得信息的查询更简便;使用的流程更清晰。2.即时可见:对订单的处理(包括购买产品的添加、修改、删除)将立即在页面中显示出来,达到即时发布、即时见效的功能。3.功能完善:流程和业务能按照设计简单明了的走下去,同时对客户网上消费进行过程有可能出现的情况都要有处理方案4.方便移植:针对不同的企业,只需要稍作修改就可以开发出适合本企业特点的电子商务系统业务逻辑分析会员类包装系统会员与订单类有一对多的关系管理员类包装系统管理员产品类包装产品的信息与订单是多对一的关系类别类包装产品的类别树状结构与产品是一对多的关系订单类包装订单的信息与产品是多对多的关系与会员是多对一的关系购物车类包装财物车的信息与产品是一对多的关系业务逻辑设计User(用户管理属性、方法设计)PropertiesIdUsernamePasswordPhoneAddrRdateMethodsGetorders()Save()Change()DeleteStaticsearch()Administrator(后台用户管理属性、方法设计)PropertiesUsernamePasswordMethodsLogin()Product(产品管理属性、方法设计)PropertiesIdNameDescryNormalpricememberPricepdatecategorymethodsgetCategory()getSalesCount()save()change()search()Categroy(类别管理属性、方法设计)progertiesidnamedescrypid(parent:categroy)mathodsgetProductCounts()save()change()SalesOrder&SaleItem(订单抬头属性、方法设计)propertiesiduseridaddrSalesItem[]OdateMethodsgetTotalPrice()save()change()getSalesItem()SalesOrder&SaleItem(订单行项目属性、方法设计)PropertiesIdproductIDunitPricepCountmethodsgetTotalPrice()save()change()getCartItems()ShoppingCart&CartIte(购物车抬头属性、方法设计)propertiesuseridCartItem[]MethodsgetTotalPrice()save()change()getCartItems()ShoppingCart&CartIte(购物车行项目属性、方法设计)propertiesproductIDunitPricepCountMethodsgetTotalPrice()小结目前的时代背景下、从企业的需求出发,阐述电子商务的必要性和必然性、电子商务对目前企业和人们生活的影响;然后通过现有技术手段,来如何实现这样一个电子商务:从系统的架构、数据库的设计、整体界面及模块的设计。以及设计过程上的思路及应用技术做出介绍。通过需求分析和概要设计、详细设计,对编码过程和项目进度时间表的控制有着进程碑的指导意义。系统实现用户注册模块实现用户注册页面有以下页面:注册页面register.jsp;注册成功registok.jsp;注册失败registerr.jsp注册执行及转换远过程:用户在首页login.jsp中注册链接、链接到register.jsp页面,同时装载自身,
同时通过脚本执行代码将光标定位到username上,当一点击提交时,是提交到自身,同时执行register.jsp中的save()函数,下面来看此提交的程序:request.setCharacterEncoding(gb2312);//编码选择gb2312Stringaction=request.getParameter(action);//此说明自身页面提交过来if(action!=null&&action.trim().equals(register)){Stringusername=request.getParameter(username);//接收用户名Stringpassword=request.getParameter(password);//接收密码Stringphone=request.getParameter(phone);//接收电话Stringaddr=request.getParameter(addr);//接收地址Useru=newUser();/*new一个user对象,这个user是通过register页面中r.*引用进来的,因为本文作者将所有user所有方法都封装在user.java中,在下方详细讲解user对象中sava()方法的执行过程*/u.setUsername(username);u.setPassword(password);u.setPhone(phone);u.setAddr(addr);u.setRdate(newDate());u.save();//调用com.cmnc.shopping.user.*中的save方法保存到数据库out.println(注册成功!恭喜!);user.java页面包含register.jsp中引用com.cmnc.shopping.user.*中的save方法,此方法是将自身保存到内存publicvoidsave(){Connectionconn=DB.getConn();//save方法首先链接上数据库Stringsql=insertintouservalues(null,?,?,?,?,?);/*然后将自身插入到数据库中*/PreparedStatementpstmt=DB.prepare(conn,sql);try{pstmt.setString(1,username);//set用户名的值pstmt.setString(2,password);//set密码的值pstmt.setString(3,phone);//set电话的值pstmt.setString(4,addr);//set地址的值pstmt.setTimestamp(5,newTimestamp(rdate.getTime()));//时间处理pstmt.executeUpdate();//执行更新方法}catch(SQLExceptione){//如果有异常,执行异常处理方法e.printStackTrace();}finally{DB.close(pstmt);DB.close(conn);}通过register.jsp,user.java设计体现了三层架构的思想,即jsp页面只做前台显示作用,这样避免了jsp页面直接与数据库交互,这样一个是为了数据安全性考虑,同时分层也为项目的扩展和可移植有着巨大的好处,每一次都可独立的发展:jsp页面不用和数据库交互、显得简洁明了,如果客户需要对项目自主扩展,只需要将中间的业务逻辑层基础上生成API文档,对业务逻辑进行说明,即可进行,不用公布数据库及其结构,如图3.1-1所示register.jsp中间层Javbean即业务逻辑层User.javaDB业务展示层底层数据层图3.1-1用户注册三层架构数据交互流程图类别模块实现类别管理分前台和后台,前台只是做展现,后台做数据处理,主要包含以下页面:类别显示categorylist.jsp、类别添加categoryadd.jsp、类别删除categorydelete.jsp、类别修改categorychange.jsp类型添加在admin目录,需通过管理员登录后才能执行,数据及页面转换执行过程,管理员通过login.jsp页面登录到后台,点击点击添加类别链接到categoryadd.jsp页面,通过categoryadd.jsp页面中的代码提交信息给自身(即categoryadd.jsp页面)
request.setCharacterEncoding(gb2312);Stringaction=request.getParameter(action);//此说明自身页面提交过来if(action!=null&&action.trim().equals(add)){Stringname=request.getParameter(name);//接收name值Stringdescr=request.getParameter(descr);//得到描述值Categoryc=newCategory();c.setPid(0);//因为是最根节点,所以为0c.setName(name);c.setDescr(descr);c.setGrade(1);//设定级别CategoryServiceservice=CategoryService.getInstance();/*拿到CategoryService内部的对象,单利模式*/service.add(c);//调用add方法out.println(类别添加成功!恭喜!);return;}封装的时候有很多种方法,在注册模块的时候是将所有的方法全部封装在user.java中,但是类别的封装与user.java有所区别,本文作者装产品类别方法分别封装成3个文件,Category.java(类别)、CategoryService.java(类别管理)、GradeOutOfBoundsException.java(级别越界),在此,我们利用单利模式,使用静态工场方法,正文是添加类别过程中方法的详细代码过程privatestaticCategoryServiceservice;privateCategoryService(){}publicstaticCategoryServicegetInstance(){if(service==null){service=newCategoryService();}returnservice;}/***拿到所有的根类别*@return*/publicList
();Connectionconn=DB.getConn();Statementstmt=DB.getStatement(conn);ResultSetrs=DB.getResultSet(stmt,select*fromcategorywheregrade=1);try{while(rs.next()){Categoryc=this.getCategoryFromRs(rs);categories.add(c);}}catch(SQLExceptione){e.printStackTrace();}finally{DB.close(conn);}returncategories;}publicvoidadd(Categoryc){//接收CategoryConnectionconn=DB.getConn();try{conn.setAutoCommit(false);/*先将conn自动提交设置成false,因为数据不能被中断,必须整体提交,如果提交过程中有错误,需要退回,不能只插入一半*/}catch(SQLExceptione1){e1.printStackTrace();}Stringsql=insertintocategoryvalues(null,?,?,?,?,?);//插入数据PreparedStatementpstmt=DB.prepare(conn,sql);try{intcno=getNextCno(conn,c);pstmt.setInt(1,c.getPid());//得到根目录IDpstmt.setString(2,c.getName());//得到类别名称pstmt.setString(3,c.getDescr());//得到描述pstmt.setInt(4,cno);//得到类别NUMBERpstmt.setInt(5,c.getGrade());//得到类别级别pstmt.executeUpdate();//执行更新方法it();//整体完成后提交}catch(SQLExceptione){try{conn.rollback();/*如果提交时出现异常,则执行回滚,让数据插入不成功*/}catch(SQLExceptione1){e1.printStackTrace();}e.printStackTrace();}finally{try{conn.setAutoCommit(true);}catch(SQLExceptione){e.printStackTrace();}DB.close(pstmt);DB.close(conn);}}系统实现结果网站的管理界面只有管理员才能进入,在打开管理员界面前,首先将进入登录界面,当管理员提交数据后,将执行admin/login.asp,把用户的信息保存在Session变量中管理员对后台管理的登录成功后的界面如图所示。在此界面中,管理员可以查看已经处理后的订单,也可以处理用户新下的订单。还可以发布新产品、添加产品的类别(也可以在添加新产品时添加类别),此外还有管理员管理和会员信息管理的功能。产品分类管理设计在产品分类管理中,主要实现了产品类别的添加、修改、删除。CategoryList.jsp是产品分类管理的主页面,每行显示一种类别,并在每行后面显示修改按钮和删除按钮,最下方为添加产品类别。处理添加、修改和删除操作的页面是CategoryAdd.jsp、CategoryModify.jsp。对于当前处理的产品类别,只显示类别名称,其他类别则需要显示超级链接,链接地址为categorylist。产品管理设计Productlis.list页面是产品管理的主页,它的功能是按产品类别分页显示产品列表,并提供产品管理的界面。界面如图3.3-3所示:在这个模块中,主要包括了以下功能:1.添加产品2.修改产品信息3.删除产品,4.产品发布;ShowProducts.jsp前台产品展示页面如图3.3-4所示,订单管理设计在订单管理中主要实现了查看订单功能和处理订单的功能订单处理是由orderlist.jsp实现的,管理员每处理一次订单,产品的库存量会相应的减少。当用户订购的产品数量超过库存数量时,系统会提出库存不足的警告,此时管理员可暂停对订单的处理,当货源补充上时,可通过修改产品信息的界面修改产品的库存数量,然后在对订单进行处理。用户管理模块这个模块主要实现登录网站用户的管理,在此页面中可以查看用户的基本信息,修改删除非法用户,还可以查看用户的交易记录,订单状态。在订单状态中,管理员可以查看用户的订单信息、送货地址等信息,方便管理员管理订单和产品销售的情况。小结系统具备了前台销售管理系统和后台管理系统的功能,购物车子系统将前台销售管理系统的各个子系统紧密联系在一起,完成客户从网上购物的整个过程,后台管理系统主要负责维护和管理数据库的产品信息、用户信息、订单信息,以及保证数据库中数据的一致性。第PAGE32页共NUMPAGES35页总结收获和体会在系统的设计开发过程中,注重了科学的软件设计思路。首先在总体设计上,采用了模块化和分层的设计思想,使整个系统流程清晰、逻辑合理,为系统的实现创造了良好的条件。其次,在各功能模块的实现上,采用了在技术上非常流行的B/S架构。作为一个简单的通用电子商务系统,具备的功能还很不完善,有很多可以扩展的地方。例如:可以加入物流功能、付款功能等。在实际中,可以根据企业的具体要求进行扩展。有条件的话,还可以尝试在网上购物车子系统和后台权限控制中采用了分布式三层的B/S设计模型,通过COM组件技术来实现中间层商务逻辑的开发,这样可以进一步提高应用程序的性能。改进
由于本系统的设计是建立在设计基本要求的基础上的,还有很多需要完善的地方,总结出来有如下几点:1.网上订单数据安全:客户从网上正式提交订单、处理过程中,用户不能对订单做修改或删除,保证实际信息与数据库记录信息的一致性2.网上支付及支付安全:由于该系统目前没有和银行的网上支付业务本系统并没有实现网上支付(信用卡结账)。如果要实现网上支付,可以对客户信息的加密来保证客户信息的安全。致谢本文是在xx老师精心指导和大力支持下完成的。xx老师以其严谨求实的治学态度、高多的敬业精神、兢兢业业、孜孜以求的工作作风和大胆创新的进去精神对我产生重要影响。他渊博的知识、开阔地视野和敏锐的思维给了我深深的启迪。同时,在此次毕业设计过程中我也学到了许多知识,专业技能有了很大的提高。最后,再次对关心、帮助我的老师和同学表示衷心的感谢!第PAGE33页共NUMPAGES35页参考文献张润彤主编《电子商务概论》电子工业出版社2008年孙鑫谢茂强等译.JavaServlet编程,北京:中国电力出版社2002冯英健著《网络营销基础与实践》清华大学出版社,2004.10第2版。李辛铭《网页编程实例解析》清华大学出版社姜同强.计算机信息系统开发-理论、方法与实践,北京:科学出版社,1999清宏计算机工作室等.JSP编程技巧,北京:机械工业出版社,2002邓劲生译.Java编程艺术,北京:清华大学出版社,2004张云涛龚玲等编著Eclipse精要与高级开发技术,北京:电子工业出版社,2005徐小青路晓村等译.MySQL完全手册,北京:电子工业出版社,2004
本文档为【电子商务网站设计与实现---毕业参考论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。