版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
./绪论近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。网上购物系统作为B2B,B2C〔BusinesstoCustomer,即企业对消费者,C2C〔CustomertoCustomer,即消费者对消费者>电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文主要考虑的是如何建设B2C的网上购物系统。网上购物是一种具有交互功能的商业信息系统。它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的无纸化交换。第1章系统开发背景与意义1.1系统开发背景随着计算机和网络的日趋普及,越来越多的商家在网上升起商店,向消费者展示出一片新鲜的购物。在美、日等信息化程度较高的国家和地区,网络商店发展速度迅猛,美国的世界级超一流的零售商,如沃尔玛凯玛特、家庭仓储、科罗格、J.C培尼等纷纷跻身于网络经商的行列。调查表明:美国的家庭已越来越习惯于在家中从网上购物。在我国,网上购物从无到有也不过短短几年时间。我国第一家网上购物发生在1996年,燕莎友谊商场首次通过网上商城售出一个景泰蓝,虽然货款的支付不是在网上进行的,但这毕竟为我国零售业奏出了网上购物的先声。如今,在、、等大城市,已有200多家商场,专卖店开设了网上商店,还有一些正处在观望阶段。真正意义上的网上购物,即货款的结算在网上进行,已在国实现。无虹商场去年5月开办了我国第一家实行计单和支付一体上的网上商店,上网的消费者只要拥有一招商银行的"一卡通",便可轻松购物,24小时商家送货上门。商家投资网上商店目的是赚钱。但从目前网上商店的运营情况来看,上网者不购物、购物者不上网的现象非常普遍,网上生意渗淡已是目前各大网上商店共同的困惑。首家网上商店——亿样购物中心由于经营不善,开业不到半年即关门停业,的一些大型零售商场,其网上商店"门庭冷落"。结算方式的原始落后是网上购物致命的弱点。在国外,计算机一般都与银行的相联,消费者和网络商店只需和网上银行打交道,不必当面直接支取现金。在我国目前除淘宝、拍拍等几家网上商店进行网上购物结算外,大部分商家结算只能采取"送货上门、到货付款"或"邮寄上门、贷款邮资先付"的方式。这样不但浪费了时间和人力,而且限制了网络的覆盖围和商品的结构种类。因此,安全、快捷、方便的电子支付手段将是今后网上商店健康发展的主要要素。1.2系统开发意义从系统的背景来看,可以看出开发一个网上购物系统有以下几点重大的意义:投资少,回收快。一项针对中国中小企业的情况调查显示,个人在网下启动销售公司的平均费用至少5万元,而网上开店建店成本非常小。一般说,筹办一家网上的商店投入很小,不用去办营业执照,不用去租门面,不用囤积货品,所需资金不过1500元左右;网上商店比同等规模的地面商店"租金"要低得多,同时租金不会因为营业面积的增加而增加,投资者也不用为延长营业时间而增加额外的费用。基本不需要占压资金。传统商店的进货资金少则几千元,多则数万元,而网上商店则不需要压资金。24小时营业时间。网上商店延长了商店的营业时间,一天24小时、一年365天不停地运作,无须专人值班看店,都可照常营业。传统店铺的营业时间一般为8-12小时,遇上坏天气或者老板、店员有急事也不得不暂时休息。不受店面空间的限制。哪怕只是街边小店,在网上却可以拥有百货大楼那么大的店面,只要投资者愿意,可以摆上成千上万种商品。目前国最大的专业拍卖同时在线的商品要超过10万件,已超过一些大超市。不受地理位置影响。不管客户离店有多远,也不管顾客是国还是国外,在网上,客户一样可以很方便地找到并购买商品。这令消费群体突破了地域的限制,变得无限广阔了。第2章网上购物系统需求分析2.1网上购物系统的现状目前在国购物系统的开发,PHP与ASP技术应用最为广泛。而JSP由于是一种较新的技术,用的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的,多采用JSP。采用PHP的如新浪网〔sina、中国人〔Chinaren等,但由于PHP本身存在的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。首先,PHP缺乏规模支持。其次,缺乏多层结构支持,对于大负荷站点,解决方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列,而PHP则缺乏这种支持。还有上面提到过的一点,PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。ASP是Microsoft开发的动态网页语言,也继承了微软产品的一贯传统,即只能运行于微软的服务器产品,IIS<InternetInformationServer><windowsNT>和PWS<PersonalWebServer><windows98>上。Unix下也有ChiliSoft的插件来支持ASP,但是ASP本身的功能有限,必须通过ASP+COM的组合来扩充,Unix下的COM实现起来非常困难。JSP则没有以上缺陷,JSP可以通过SUNJava的JavaClass和EJB获得规模支持,通过EJB/CORBA以及众多厂商的ApplicationServer获得结构支持。三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet。比较出名的如IBM的E-business,它的核心是采用JSP/Servlet的WebSphere;西方另外一个非常著名的电子商务软件提供商Intershop,它原来的产品Intershop1,2,3,4占据了主要的电子商务软件份额。它们都是通过CGI来提供支持的。但去年10月后它推出了Enfinity,一个采用JSP/Servlet的电子商务ApplicationServer,而且声言不再开发传统软件。总的来说,ASP、PHP、JSP三者都有相当数量的支持者,而这三者也各有所长,在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统则采用较新的JSP技术,一方面JSP的安全性和跨平台性比较好,另一方面,我也希望能从开发该系统的过程中,深入学习一下这门编程语言。2.2可行性分析JSP<JavaServerPages>是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件<*.htm,*.html>中插入Java程序段<Scriptlet>和JSP标记<tag>,从而形成JSP文件<*.jsp>。用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。2.3系统实现的目标现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节,这样才能使得在电子交易时避免不必要错误发生。我们将使用HTML、JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。当数据量比较大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。本设计在实际应用中的解决方案是建立,以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解商品买卖的情况。2.4系统功能需求通过对淘宝网,拍拍等网上购物的认识和分析,我对网上购物有了基本的了解,我觉得该系统至少应该具有以下的一些基本功能:注册管理:能够对用户名,密码的简单验证;能够对电子,Email进行有效性验证;能够防止利用页面刷新重复注册,以及已经注册的用户不能重复注册。商品浏览:分类显示商品;显示商品详情,提供购买;可以对商品进行模糊查询。浏览商品时不要求用户登录,但下订单前用户必须登录,对于浏览过的商品有历史记录。购物车管理:欲购买商品可以增添到购物车;也可以从购物车退回商品,清空购物车;对于同一件商品的多次购买只能在原来的商品上增添数量,还可以修改购物车中某个商品的数量,统计商品总金额。订单管理:只有登录的用户可下订单;用户可以查看自己的订单。管理员可以修改订单的状态。商品管理:管理员可以增添商品分类;修改商品基本信息;增添商品时候可以上传图片。注册用户管理:管理员可以通过查询指定用户,并管理用户的启用,冻结。公告管理:管理员可以通过公告的形式向顾客告知本商城的近期动向,如:打折信息、维护信息等。第3章系统设计工具介绍3.1平台选择Microsoft软件是日常生活中使用最为广泛的软件,基于这一特点,我们选用的平台是JavaServerPage<简称JSP>+SQL2005数据库,它适应于Windows操作系统并能很好的与其应用程序结合,而且SQLServer2005数据库也易操作,从而大大降低了编程难度。具体如下:采用了Internet架构,Bowser/Server模式。Web服务器采用Tomcat6.0服务器,数据库管理系统为SQLServer2005。开发工具使用Dreamweaver搭建系统页面框架,再用MyEclipse在其中插入JSP语句,JavaBean使用MyElipse编写。3.2系统开发工具本系统是基于JSP+SQLServer2005数据库技术实现的,现对JSP技术和SQLServer2005数据库作简要的介绍。开发语言—JSPJSP页面由HTML代码和嵌入其中的Java代码所组成。JavaBean是JSP的技术基础,而且大型的Web应用程序的开发需要JavaBean和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网等特点。JSP的技术的优势:一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不需要做任何更改。系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。JSP技术是用Java语言作为脚本语言的。Java语言是成熟的、强大的、易扩充的编程语言。高效性与安全性。JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。可维护性。由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。多样化和功能强大的开发工具支持。Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。数据库—MicrosoftSQLServer2005SQLServer是一个关系数据库管理系统。SQLServer2005是Microsoft公司推出的SQLServer数据库管理系统的较新版本。SQLServer2005数据库引擎提供完整的XML支持。它还具备构成最大的Web站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQLServer2005关系数据库引擎支持当今苛刻的数据处理所需的功能。数据库引擎充分保护数据完整性,同时将管理众多并发修改数据库的用户的开销减到最小。SQLServer2005分布式查询使得以引用来自不同数据源的数据,就好像这些数据是SQLServer2005数据库的一部分,同时分布式事务支持充分保护分布式数据更新的完整性。第4章系统设计功能模块:4.1项目规划网上购物系统是一个典型的JSP数据库开发应用程序,由前台商品展示及销售、后台管理2部分组成。前台商品展示及销售:该部分主要包括新品上架、特价商品、销售排行、购物车、会员管理、商品公告及订单查询、商品查询等。后台管理:该部分主要对商城的一些基础数据进行有效管理,包括商品管理、会员管理、订单管理、公告管理等。系统功能结构图网上购物系统前台功能结构如图4-1所示图4-1系统前台功能结构图网上购物系统后台功能结构如图4-2所示图4-2系统后台功能结构图处理流程系统处理业务流程如图4-3所示图4-3业务流程图4.2系统设计4.2.1设计目标本系统在设计时应该满足以下几个目标:采用人机对话的操作方式,界面设计美观友好、信息查询灵活、方便、快捷、准确、数据存储安全可靠。全面展示商城所有商品,并可展示最新商品及特价商品。为顾客提供一个方便、快捷的商品信息查询功能。采用模糊查询查询数据。会员可以随时修改自己的会员资料。实现网上购物。商品销售排行,以方便顾客了解本商城的热销商品及帮助企业领导者做出相应的决策。查看商城的公告信息。用户随时都可以查看自己的订单。对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。系统最大限度地实现了易维护性和易操作性。系统运行稳定、安全可靠。系统开发环境硬件平台:CPU:2.00GHz;存:2G软件平台:操作系统:Windows7旗舰版;数据库:SQLServer2005;开发工具包:JDKWindows-i586;JSP服务器:Tomcat5.0以上;浏览器:IE8;分辨率:最佳效果1024×768。4.3数据库设计本系统数据库采用SQLServer2005数据库,系统数据库名称为db_shop,共包含9表。〔1tb_superType〔商品大分类信息表商品大分类信息表主要用来保存商品类别的类别信息。表tb_superType的结构如表4-1所示。表4-1商品大分类信息表字段名数据类型长度是否主键描述idint4是类别IDTypeNamevarchar50类别名称〔2tb_subType〔商品小分类信息表商品小分类信息表主要用来保存商品类别中小的类别信息。表tb_subType的结构如表4-2所示。表4-2商品小分类信息表字段名数据类型长度是否主键描述IDInt4是类别IDsuperTypeInt4父类IDTypeNameVarchar50类别名称〔3tb_rebate〔折扣表折扣表用来保存顾客在购买商品时的折扣信息。表tb_rebate的结构如表4-3所示。表4-3折扣表字段名数据类型长度是否主键描述gradeVarchar20是等级AmountMoney8消费额rebateFloat8折扣〔4tb_order_detail〔订单明细表订单明细表用来保存订单的详细信息。表tb_order_detail的结构如表4-4所示。表4-4订单明细表字段名数据类型长度是否主键描述IDbigint8是ID号orderIDbigint8与tb_Order表的OrderID字段关联goodsIDbigint8商品IDpricemoney8价格numberint4数量〔5tb_order〔订单信息主表订单信息主表用来保存订单的概要信息。表tb_order的结构如表4-5所示。表4-5订单信息主表字段名数据类型长度是否主键描述OrderIDBigint8是订单编号bnumbersmallint 2品种数username Varchar15用户名Truenamevarchar 15真实addressVarchar100联系地址postcode varchar 10邮政编码telVarchar20payVarchar20付款方式carryVarchar20运送方式rebatefloat8折扣OrderDatesmalldatetime4订货日期enforceint4是否执行bzvarchar 200备注〔6tb_member〔会员信息表会员信息表主要用来存储所注册的会员的信息。表tb_member的结构如表4-6所示。表4-6会员信息表字段名数据类型长度是否主键描述ID int 4 是会员IDuserName varchar20用户名trueNamevarchar20真实passWord varchar20密码cityvarchar20所在城市addressvarchar100联系地址postcodevarchar6邮政编码cardNOvarchar24证件cardType varchar20证件类型gradeint4等级Amountmoney8消费额telvarchar20emailvarchar100Email地址freezeInt4是否冻结〔7tb_manager〔管理员信息表管理员信息表用来保存管理员信息。表tb_manager的结构如表4-7所示。表4-7管理员信息表字段名数据类型长度是否主键描述IDInt4是ID号managervarchar 30管理员名称PWDvarchar30密码〔8tb_goods〔商品信息表商品信息表主要用来保存商品信息。表tb_goods的结构如表4-8所示。表4-8商品信息表字段名数据类型长度是否主键描述IDbigint8是商品IDtypeIDInt4类别IDgoodsNamevarchar200商品名称introducetext 16商品简介price money8定价nowPricemoney8现价picturevarchar100图片文件INTimedatetime8录入时间newGoodsInt4是否新品saleInt4是否特价hitInt4浏览次数〔9tb_BBS〔公告信息表公告信息表主要用来保存商城的公告信息。表tb_BBS的结构如表4-9所示。表4-9公告信息表字段名数据类型长度是否主键描述IDInt4是ID号titlevarchar100 公告标题contentvarchar40000公告容INTimedatetime8录入时间第5章网上购物系统实现过程本系统所采用的是Internet架构,三层B/S模式,采用JSP+SQLServer2005数据库技术实现,同时利用了JavaBean、JavaScript、JDBC-ODBC桥接器等技术。本节将首先介绍系统开发工具、再介绍系统各部分的实现方法。5.1系统各部分的实现方法从系统功能模块划分中可以看出,系统功能模块分为前台和后台。前台包括有用户注册、用户登录、修改个人信息、查询商品、特价商品展示、新品展示、购买商品、加入购物车、支付等功能。后台模块总要有添加商品、删除商品、添加商品类别、管理用户、管理公告、管理订单等。各模块虽然是独立的,但又统一于同一数据库中,便于管理员管理维护数据库,同时也便于用户的操作。创建与数据库的连接在JSP中可以使用Java的JDBC技术,实现对数据库中表记录的查询、修改和删除等操作。JDBC技术在JSP中占有很重要的位置。JDBC〔JavaDataBaseConnectivity是Java数据库连接API。简单地说,JDBC能完成三件事:与一个数据库建立连接向数据库发送SQL语句处理数据库返回的结果JDBC-ODBC桥是一个JDBC驱动程序,它通过将JDBC操作转换为ODBC操作来实现JDBC操作。对ODBC,它像是通常的应用程序,桥为所有对ODBC可用的数据库实现JDBC。JDBC在设计上和ODBC很相似。JDBC和数据库建立连接的一种常见方式是建立一个JDBC-ODBC桥接器。由于ODBC驱动程序被广泛的使用,建立这种桥接器,是的JDBC有能力访问几乎所有类型的数据库。JDBC也可以直接加载数据库渠道程序访问数据库。访问数据库的JavaBeanJavaBean是一种Java语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将部域暴露成为属性。众所周知,属性名称符合这种模式,其他Java类可以通过自省机制发现和操作这些JavaBean属性。用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,并且其他的开发者可以通过部的JSP页面、Servlet、其他JavaBean、Applet程序或应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。JSP的一个重要特性就是可以用JavaBean实现功能的扩展。将大部分功能放在JavaBean中完成,以使JSP页面程序更干净简洁、利于维护。JavaBean可以很方便的用来捕获页面表单的输入并完成各种业务逻辑的处理。连接数据库的JavaBean—ConnDB。通过JSP页面调用此JavaBean,可以实现对数据库的连接,数据表的添加、删除、更新等操作。编译及使用JavaBean例如用JDK的javac命令编译ConnDB.java,得到ConnDB.class文件,即表示建立了一个JavaBean。在JSP页面中要使用这个JavaBean,先使用语句:<%pageimport=".wgh.DB.connDB"%>,通过该引用就可以实现Bean中相关功能函数,这样就可以方便的完成对数据库的增、删、改和查询等操作。5.2系统界面设计前台首页设计在飞鸽购物商城的首页中,用户不但可以在第一时间掌握商城推出的特价商品、上架新品、最新公告等,还可以查看销售排行、搜索指定商品、商品分类查询等。飞鸽购物商城前台首页的运行结果如图5-1所示。121234567891011图5-1前台首页下面以列表形式给出前台页面各部分的说明信息,如表5-1所示。表5-1前台页面说明区域名称说明对应文件1导航主要展示的旗帜广告和站导航条navigation.jsp2用户登录主要用于会员登录和提供会员注册的入口left.jsp3商品搜索主要用于按商品的大分类模糊查询商品信息search.jsp4商城公告主要用于显示最新公告left.jsp5特价商品用于显示最新的两条特价商品的信息index.jsp6商品分类按类别展示商品信息right.jsp7销售排行显示商城中销售量最好的10种商品left.jsp8商品上架主要用于显示最新上架的4种商品信息index.jsp9广告招商位用于显示的广告招商信息right.jsp10后台登录入口后台登录入口copyright.jsp11信息显示信息copyright.jsp特价商品模块设计特价商品模块共有两个入口,一个是导航条中的[特价商品]导航按钮,另一个是前台的居中位置,分栏列出了商城中特价商品中最新的两条特价商品信息,单击特价商品展区中的"More…"超可以进入到特价商品页面,在该页面中将列出商城中的全部特价商品。主要包括商品图片、名称、原价、现价等信息。同时设置了[购买]按钮和[详细信息]按钮,分别用于将商品信息添加至购物车和查看商品详细信息。特价商品模块在首页的设计效果如图5-2所示。图5-2特价商品页面查询数据表中的特价商品。特价商品信息同商品基本信息同时保存在商品信息表tb_goods中,以字段sale标识,当sale字段的值为1时,代表该商品为特价商品。部分实现代码如下:ResultSetrs=conn.executeQuery<"selecttop4ID,GoodsName,Introduce,price,nowprice,picturefromtb_goodswheresale=1orderbyGoodsName">;<tdheight="27"style="text-decoration:line-through;color:#FF0000">原价:<%=price%><元></td></tr><tr><tdheight="27">现价:<%=nowprice%><元></td></tr><tr><tdheight="27"><%=introduce%></td></tr><tr><td><inputname="Submit"type="submit"class="btn_grey"onClick="history.back<-1>;"value="返回"> <%if<username!=null&&username!="">{%> <inputname="see"type="button"class="btn_grey"onClick="window.location.href='cart_add.jsp?goodsID=<%=goodsID%>'"value="购买"><%}%></td>新品上架模块设计新品上架模块也有两个入口,一个是导航条中的[新品上架]导航按钮,另一个是前台的居中位置,列出了商城中上架新品中的最新上市的4条商品信息,单击新品上架展区中的"More…"超可以进入到新品上架页面,在该页面中将列出商城中的全部上架新品。主要包括商品图片、名称、现价等信息。同时设置了[购买]按钮和[查看详细信息]按钮,分别用于将商品信息添加至购物车和查看商品详细信息。下面只以首页中的新品上架为例进行介绍。新品上架模块在首页中的设计效果如图5-3所示。图5-3新品上架页面新品上架信息同商品基本信息同时保存在商品信息表tb_goods中,以字段newGoods标识,当newGoods字段的值为1时,代表该商品为上架新品。在首页中查询新上架商品。部分实现代码如下:<scriptsrc="js/yu.js"type="text/javascript"></script><scriptsrc="js/tb.js"type="text/javascript"></script><divalign="center"><divid="MainPromotionBanner"><divid="SlidePlayer"><ulclass="Slides"><li><atarget="_blank"onClick="window.location.href='goods_detail.jsp?ID=<%=new_ID%>'"><imgsrc="images/goods/<%=new_picture%>"></a></li></ul></div>商品分类模块设计为了方便用户查询所需商品信息,在中设置了商品分类显示模块。在首页的右侧以树状菜单的形式列出了商品的大、小分类信息,用户单击大类别结点可以显示出该类的所有小类信息,单击小类结点可以进入到分类商品显示页面查看该类别的全部商品信息,在分类商品显示页面中,单击商品名称可以查看相应商品的详细信息。如果用户已经登录,还可以直接将商品信息添加至购物车中。商品分类模块的页面设计效果如图5-4所示。图5-4商品分类页面实现以树状菜单的形式显示商品的大、小分类信息的关键是获取商品的大分类信息,并分别查询出每个大类所对应的小分类信息,再通过<div>标记和JavaScript自定义函数实现<div>结点的显示和隐藏。部分实现代码如下:<%if<subType_RC<=0>{%> <imgsrc="images/jian_null.gif"width="38"height="16"border="0"><%=superType%><%}else{%> <ahref="Javascript:ShowTR<img<%=m%>,OpenRep<%=m%>>"><imgsrc="images/jia.gif"border="0"alt="展开"id="img<%=m%>"></a><ahref="Javascript:ShowTR<img<%=m%>,OpenRep<%=m%>>"><%=superType%></a><%}%>会员管理模块设计在前台的会员管理模块中主要包括会员注册、会员登录、会员资料修改3部分。由于会员资料修改同会员注册的实现方法类似,只是调用的SQL语句不同,所以此处只给出会员注册和会员登录进行介绍。会员注册会员注册的入口位于首页的左侧。用户单击[注册]按钮即可进入到会员注册页面,该页面的设计效果如图5-5所示。图5-5会员注册页面部分实现代码如下:if<myform.pwd1.value=="">{ alert<"请确认密码!">;myform.pwd1.focus<>;return; }if<myform.pwd.value!=myform.pwd1.value>{ alert<"您两次输入的密码不一致,请重新输入!">;myform.pwd.focus<>;return; }if<myform.cardno.value=="">{ alert<"请证件!">;myform.cardno.focus<>;return; } if<myform.email.value=="">{ alert<"请输入Email地址!">;myform.email.focus<>;return; }vari=myform.email.value.indexOf<"">;varj=myform.email.value.indexOf<".">;if<<i<0>||<i-j>0>||<j<0>>{ alert<"您输入的Email地址不正确,请重新输入!">;myform.email.value="";myform.email.focus<>;return; }会员注册模块由两个页面组成,一个是用于收集用户输入的注册信息的会员注册页面,另一个用于将会员注册信息保存到数据表中的处理页。会员注册页面主要由表单元素组成,比较简单。将会员注册信息保存到数据表中,首先使用JavaBean中的member类保存客户端输入的会员信息,再通过调用memberDaoImpl中的insert方法将会员信息保存到会员信息表中。在保存会员信息时,还需要判断会员名是否存在,必须保证会员名称的惟一性。会员登录会员登录用于会员登录本进行购物或查看订单情况。会员登录入口位于首页的左侧,页面运行结果如图4所示。下面给出会员登录页面的设计效果图和会员登录后的会员登录页面的运行结果,分别如图5-6、图5-7所示。图5-6会员登录页面图5-7会员登录后页面部分实现代码如下:try{ ResultSetrs=conn.executeQuery<"select*fromtb_Memberwhereusername='"+username+"'andfreeze=0">; if<rs.next<>>{ StringPWD=request.getParameter<"PWD">; if<PWD.equals<rs.getString<"password">>>{ session.setAttribute<"username",username>; response.sendRedirect<"index.jsp">; }else{ out.println<"<scriptlanguage='javascript'>alert<'您输入的用户名或密码错误,请与管理员联 系!'>;window.location.href='index.jsp';</script>">; } }else{ out.println<"<scriptlanguage='javascript'>alert<'您输入的用户名或密码错误,或您的账户已经被冻结,请与管理员联系!'>;window.location.href='index.jsp';</script>">;}}catch<Exceptione>{ out.println<"<scriptlanguage='javascript'>alert<'您的操作有误!'>;window.location.href='index.jsp';</script>">;}conn.close<>;%>当用户在登录窗口中输入用户名和密码后,单击[登录]按钮,系统将对输入的用户名和密码进行验证,如果用户输入的用户名存在并且冻结字段的值不为1,则判断用户输入的密码是否正确,如果密码正确,则重新进入首页,显示登录用户的用户名、[修改资料]按钮、[退出登录]按钮,否则提示登录失败。销售排行模块设计销售排行页面主要是将订单视图中的数据按GoodsName、GoodsID字段分组并统计销售数量,再按统计后的销售数量降序排列,最后再使用SQL语句中的top关键字取出销售量最高的前5种商品。商品销售排行页面运行结果如图5-8所示图5-8商品销售排行页面部分实现代码如下:<%pageimport=".wgh.DB.connDB"%><%connDBconn=newconnDB<>;Stringusername=<String>session.getAttribute<"username">;ResultSetrs=conn.executeQuery<"selecttop5GoodsID,GoodsName,sum<number>assumNumfromV_order_detailgroupbyGoodsName,GoodsIDorderbysumNumdesc">;intgoodsID=-1;StringgoodsName="";%>第6章系统测试与评价分析6.1测试环境简介硬件平台:Inter<R>Core<TM>2Duo,存2GB,硬盘250GB软件平台:Windows7操作系统,MicrosoftSQLServer2005数据库,IE8.0浏览器,Tomcat5.5,JSP开发的电子商城商品销售管理系统。Everestultimate是一个测试软硬件系统信息的工具,它可以详细的显示出PC每一个方面的信息。支持上千种<3400+>主板,支持上百种<360+>显卡,支持对并口/串口/USB这些PNP设备的检测,支持对各式各样的处理器的侦测。目前EverestHome已经能支持包括中文在的30种语言,让你轻松使用。而且经过几次大的更新,现在的Everest已经具备了一定的硬件测试能力,让您对自己电脑的性能有个只管的认识。6.2系统的不足及修改方法第一个问题就是用户登陆以后,如果需要修改资料,系统会先将数据库中该用户的所有信息以列表形式显示出来,问题就是此时出现的用户密码信息是以明码形式出现的,这对用户来说就存在这很大的风险,容易被他人看到,最好是以一些特殊符号来代替从而防止信息泄漏。在参考了其他的登陆模块之后,我对代码进行了简单修改,即可实现,问题是由密码的输入框属性引起的,原始的代码为:<inputtype="text"name="passWord"size="20"class=inputvalue="<%=rs.getString<"passWord">%>">此时密码输入框的属性为text也就是文本框,它会直接将数据以明码形式原封不动的输出,我们只需将其改为password属性即可,它以默认的黑色圆点代替真实数据,这样一个简单的修改,就保证了该部分的安全性。第二问题就是在显示公告中没有实现滚动的功能,并且会显示所有的公告,使页面拉长影响页面美观。后来在指导老师的帮助下成功的实现了公告的滚动和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 结合子磨孔夹具课程设计
- 钱家营采矿学课程设计
- 课程设计计算器设计报告
- 果汁冷却器课程设计
- 小学体育教研组学期工作总结
- 农机管理学课程设计
- 港口总平面布置课程设计
- 厨艺大赛活动方案
- 湖北工业大学《数据挖掘与机器学习》2023-2024学年期末试卷
- 门式钢架课程设计纸
- 中国成人心理健康测试
- 青岛版小学数学【三位数乘两位数的笔算】教案
- 大学动植物检疫考试(习题卷7)
- 译林版九年级上下册英语单词表(含音标)
- 汉语拼音字母表(A4打印版)
- 粗粒土大三轴试验记录
- 幼儿园大班语言《骑着恐龙去上学》课件
- 无偿划转国有股权及资产的可行性论证报告(附无偿划转协议)
- 医疗技术临床应用动态评估制度
- 公务车司机年度工作总结 公务用车驾驶员个人总结
- 第二版《高中物理题型笔记》上册
评论
0/150
提交评论