




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i太阳能热水器销售网站的建设与开发摘要随着互联网技术的发展,人们的一些传统的生活方式正在逐渐改变,网上购物正逐渐走入人们的生活中来,人们只要在家中上网浏览一下网页,就可以买到自己中意的商品,比起传统的购物方式来说,网上购物具有可挑选的范围更广,更新的速度更快,价格更低等优势。该电子商务网站系统是用JSP在网络上架构一个动态的太阳能热水器销售网站,用MyEclipse作为网页开发工具,SQLServer2000作为系统数据库,Tomcat6.0作为Web服务器。本系统包括了两大主要板块:前台购物、后台管理。这两大板块包括了现在网上购物系统的主要基本功能。用户可以方便的使用,完成网上浏览、购物等操作,管理员也可以在后台方便的进行对网站和用户的管理操作。总之,本系统操作便捷,界面明了,具有很好的可扩展性和可维护性。关键词:JSP;网上购物;太阳能热水iiThesolarwaterheatersaleswebsiteconstructionanddevelopmentAbstractAlongwiththeInternettechnologydevelopment,peoplessometraditionalwayoflifewasgraduallychanging,onlineshoppingisgraduallyintopeopleslives,peoplejustathomewebsurfingwebpages,canbuyhisfavoritegoods,comparedtotraditionalshoppingway,onlineshoppinghasselectedawider,updatesfaster,lowerpriceadvantage.ThisecommercesystemisonthenetworkarchitecturewithJSPelectronicshoppingwebsiteofdynamic,withMyEclipseasWebdevelopmenttools,SQLServer2000assystemdatabase,Tomcat6.0asaWebserver.Thissystemincludestwomajorparts:frontdeskshopping,backgroundmanagement.Thesetwoplatesarenowonlineshoppingsystemincludingthemainbasicfunctions.Userscaneasilyuse,finishontheweb,shopping,administratorscanalsooperateconvenientlyinthebackgroundofwebsitesandusermanagementoperation.Anyhow,thesystemoperationisconvenient,theinterfacepalpability,hastheverygoodexpansibilityandmaintainability.Keywords:JSP;Onlineshopping;E-commercesystemiii目录摘要.iAbstract.ii1系统概述.11.1系统开发背景.11.2技术选择依据.11.3JSP的技术原理.21.3.1JSP简介.21.3.2JavaBean简介.21.4MyEclipse平台的搭建.21.5数据源配置.32系统需求分析及总体设计.62.1需求分析.62.2系统功能模块设计.62.3处理流程.63数据库设计.83.1数据库概念设计.83.2数据库逻辑结构设计.103.3数据库表之间的关系设计.123.4用JSP连接数据库.134系统详细设计.154.1前台部分.154.1.1系统架构设计.154.1.2网站前台首页设计.174.1.3会员管理模块设计.184.1.4会员资料修改模块设计.204.1.5购物车模块设计.214.1.6收银台模块设计.244.2后台部分.244.2.1后台总体框架.244.2.2后台登录模块设计.264.2.3商品管理模块设计.274.2.4会员管理模块设计.304.2.5订单管理模块设计.314.2.6公告管理模块设计.334.2.7退出系统模块设计.34结论.35参考文献.36致谢.37iv外文原文.38中文翻译.4701系统概述1.1系统开发背景随着计算机和网络的日趋普及,越来越多的商家在网上升起商店,向消费者展示出一片新鲜的购物大地。在美、日等信息化程度较高的国家和地区,网络商店发展速度迅猛,美国的世界级超一流的零售商,如沃尔玛凯玛特、家庭仓储、科罗格、J.C培尼等纷纷跻身于网络经商的行列。调查表明:美国的家庭已越来越习惯于在家中从网上购物。在我国,网上购物从无到有也不过短短几年时间。我国第一家网上购物发生在1996年,燕莎友谊商场首次通过网上商城售出一个景泰蓝,虽然货款的支付不是在网上进行的,但这毕竟为我国零售业奏出了网上购物的先声。如今,在北京、上海、深圳等大城市,已有200多家商场,专卖店开设了网上商店,还有一些正处在观望阶段。真正意义上的网上购物,即货款的结算在网上进行,已在国内实现。深圳无虹商场去年5月开办了我国第一家实行计单和支付一体上的网上商店,上网的消费者只要拥有一张招商银行的“一卡通”,便可轻松购物,24小时内商家送货上门。商家投资网上商店目的是赚钱。但从目前网上商店的运营情况来看,上网者不购物、购物者不上网的现象非常普遍,网上生意渗淡已是目前各大网上商店共同的困惑。上海首家网上商店上海亿样购物中心由于经营不善,开业不到半年即关门停业,北京的一些大型零售商场,其网上商店“门庭冷落”。结算方式的原始落后是网上购物致命的弱点。在国外,计算机一般都与银行的帐户相联,消费者和网络商店只需和网上银行打交道,不必当面直接支取现金。在我国目前除淘宝、拍拍等几家网上商店进行网上购物结算外,大部分商家结算只能采取“送货上门、到货付款”或“邮寄上门、贷款邮资先付”的方式。这样不但浪费了时间和人力,而且限制了网络的覆盖范围和商品的结构种类。因此,安全、快捷、方便的电子支付手段将是今后网上商店健康发展的主要要素。1.2技术选择依据在互联网服务业务方面:电子邮件、搜索引擎、网上银行、在线交易、网络广告、网络新闻、网络游戏等服务业务仍然快速的发展着。而本次设计的任务是,构建一个电子商务网站,采用的主要技术是基于服务器端的JSP、Java的组件JavaBean,以及网页编程语言HTML。JSP是JavaServerPage的缩写,是由SunMicrosystems公司倡导、许多公司参与建立一种动态网页技术标准,它在动态网页的建设中有强大而特别的功能。JSP是一种服务器端HTML(或XML)嵌入Java代码的脚本语言,是开发Web动态网站快速而有效的工具,JSP的技术的优势:(1)JSP技术是用Java语言作为脚本语言的。Java语言是成熟的、强大的、易扩充的编程语言。(2)高效性与安全性。JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。1(3)可维护性。由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。(4)稳定性。(5)产品的多样性。目前,在国内JSP还是一种较新的技术。但JSP+Servlet+JDBC+JavaBean目前已经成为开发电子商务平台的主流技术。随着国内与国际的接轨,JSP必将成为网站开发技术的首选。1.3JSP的技术原理1.3.1JSP简介在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。JSP页面看上去像标准的HTML和XML页面,并附带有JSP引擎能够处理和抽取的额外元件。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给用户。程序片段可以操作数据库、重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。所有程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。1.3.2JavaBean简介JavaBean是一种基于Java的软件组件,JavaBean和Active控件一样,可以通过封装业务逻辑建立一整套可重复利用的对象库。JSP对于在Web应用中集成JavaBean组件提供了完善的支持,这种支持不仅能缩短开发时间(可以直接利用经过测试和可信任的已有组件),避免重复开发,也为JSP应用带来了更多的可伸缩性。JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互及数据提取等。由于Java语言在这些方面所具有的特点和优势,使得基于它的软件JavaBean组件技术倍受人们关注。它的任务就是:一次编写,可以在任何地方执行,可以在任何地方重用。JavaBean组件可以在任何地方重用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。为了创建和使用Java软件组件,JavaBean被实现为一种独立于平台和结构的应用程序接口,它的实现可以忽略内部的结构和细节问题,只需定义其外部的特征及对外功能就行。其中,属性、方法和事件三种接口可以独立对外进行开发。1.4MyEclipse平台的搭建MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了2完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。在结构上,MyEclipse的特征可以被分为以下几类:J2EE模型WEB开发工具EJB开发工具应用程序服务器的连接器J2EE项目部署服务数据库服务MyEclipse整合帮助对于每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。我用的是MyEclipse8.5,所以直接安装后配置即可以使用了。安装过程在单击MyEclipseKeyGen.exe运行程序后,按照提示就可以正确安装了,在此就不赘述了。安装完MyEclipse后打开应用程序,在菜单栏可看到MyEclipse一项,下面的工具栏中可看到MyEclipse的Tomcat图标。然后就可以进行JDK的相关配置。从菜单栏中进入“WindowsPreferences”,打开Preference对话框进行JDK的配置,在左侧栏中选择“JavaInstalledJREs”,按“Add”按钮进行添加;在弹出的“AddJRE”对话框中,选择JRE的目录,这里是C:ProgramFilesGenuitecCommonbinarycom.sun.java.jdk.win32.x86_1.6.0.013,在JRE名称一栏中,填下想取的名称,我这里叫“SunJDK1.6.0_13”,然后“OK”确定,返回到设置框中,将刚刚配置的JRE选中。开始正式配置Tomcat。左侧MyEclipse节点下“ApplicationServer”中有Tomcat,选择自己安装的版本,我这里是Tomcat6.x,在对话框中,将TomcatServer设为“Enable”,并设置Tomcat的安装目录,我这里是D:ProgramFilesapache-tomcat-6.0.14,其它的框会自动填充,在Tomcat的JDK中选择刚刚配置的JDK,这里是SunJDK1.6.0_13,点击Apply按钮,配置就完成了。1.5数据源配置JDBC驱动程序是独立于数据库系统的,但几乎所有的数据库系统都有自己的私有协议,用来与客户端应用程序通信。所以JDBC驱动程序可以部分的利用这些已有上网数据库引擎。按照JDBC对这些数据库引擎的依赖程度,可以分为四类:JDBC-ODBC桥、通过本地客户机网络代码连接数据库、通过中间件连接数据库、与DBMS直接连接,我选择的就是JDBC-ODBC桥。下面就简述创建新数据源的步骤。首先,要定义一个数据库名称(DSN)。打开“开始设置控制面板管理工具数据源(ODBC)”。在弹出的“ODBC数据源管理器”对话框中选择“系统DSN”选项卡,单击“添加”按纽,选择“SQLServer”为数据库驱动程序,单击“完成”按纽。然后在弹出的“创建SQLServer的新数据源”对话框的“数据源名称”文本框输入“db_shop”,在“描述”文本框3中可以写上数据库的功能。在“服务器”下拉列表中选择要连接的SQLServer,此处要安装的本地服务器,所以选择“local”即可。单击“下一步”按钮,选择“使用用户输入登录ID和密码的SQLServer验证”单选按钮,“登录ID”默认为“sa”,密码为空。单击“下一步”按钮,在下拉列表中选择该数据库的数据库为“db_shop”。单击“下一步”按钮,再单击“完成”按钮,在“ODBCMicrosoftSQLServer安装”对话框中单击“确定”即可。42系统需求分析及总体设计2.1需求分析此基于JSP的购物网站分前台功能和后台功能:前台部分由用户使用,主要包括新品上架、特价商品、销售排行、购物车、会员管理、商品公告及订单查询、商品查询等。后台部分由管理员使用,主要包括对商城内的一些基础数据进行有效管理,包括商品管理、会员管理、订单管理、公告管理等。2.2系统功能模块设计太阳能热水器销售网站前台功能结构如图2-1所示。图2-1系统前台功能结构图太阳能热水器销售网站后台功能结构如图2-2所示。图2-2系统后台功能结构图2.3处理流程系统前台处理业务流程如图2-3所示。5图2-3前台业务流程图否否成功查看我的订单结束商品购买查看商品加入购物车结账生成订单错误提示填写收件人信息与付款方式继续购物是否登陆验证登录首页用户登陆个人首页输入用户名、密码验证修改个人信息查看我的订单修改密码用户注册网站首页错误提示填写注册信息注册开始登陆网站首页成功成功失败是失败是失败63数据库设计3.1数据库概念设计根据以上各节对系统所做的需求分析和系统设计,规划本系统中使用的数据库试题分别为商品大类别实体、商品小类别实体、商品实体、会员实体、会员订单实体、会员订单明细实体、管理员信息实体、公告信息实体和友情链接实体。下面分别介绍几个关键实体的图。(1)商品实体商品信息包括自动生产的商品编号、类别编号、商品名称、商品介绍、商品定价、商品现价、商品图片、录入时间、是否新品、是否特价和浏览次数属性。商品实体的实体图如图3-1所示。图3-1商品的实体图商品商品现价商品名称商品号图片文件录入时间浏览次数商品定价类别号商品简介是否新品是否特价7(2)会员实体会员信息包括自动生成的会员编号、登录账号、登录密码、真实姓名、所在城市、联系地址、邮政编码、证件号码、证件类型、等级、消费额、电话、电子邮箱、是否冻结属性,会员的实体图如图3-2所示。图3-2会员的实体图(3)订单实体订单信息包括订单编号、品种数、订货人账号、订货人真实姓名、订货人地址、订货人邮政编码、订货人电话、付款方式、运送方式、折扣、订货时间、订货是否执行及备注属性。其中订货是否执行信息中,1代表货物已经发送出去,0代表货物没有发送出去。会员订单的实体图如图3-3所示。会员电话用户名密码消费额等级联系地址Email地址真实姓名是否冻结证件号码邮政编码会员编号所在城市证件类型订单是否已执行用户名品种数订货日期折扣联系地址备注真实姓名订单编号付款方式邮政编码电话运送方式8图3-3订单的实体图3.2数据库逻辑结构设计本系统数据库采用SQLServer2000数据库,系统数据库名称为db_shop,共包含9张表,下面给出主要数据表的结构。(1)tb_superType(商品大分类信息表)商品大分类信息表主要用来保存商品类别中大的类别信息。表tb_superType的结构如表3.1所示。表3.1表商品大分类信息表的结构字段名数据类型长度是否主键描述ID(主键)int4是类别IDTypeNamevarchar50类别名称(2)tb_subType(商品小分类信息表)商品小分类信息表主要用来保存商品类别中小的类别信息。表tb_subType的结构如表3.2所示。表3.2商品小分类信息表的结构字段名数据类型长度描述ID(主键)int4类别IDsuperTypeint4父类IDTypeNamevarchar50类别名称(3)tb_rebate(折扣表)折扣表用来保存顾客在购买商品时的折扣信息。表tb_rebate的结构如表3.3所示。表3.3表折扣表的结构字段名数据类型长度描述Grade(主键)varchar20等级Amountmoney8消费额rebatefloat8折扣(4)tb_order(订单明细表)订单明细表用来保存订单的详细信息。表tb_order_detail的结构如表3.4所示。表3.4表订单明细表的结构字段名数据类型长度描述ID(主键)bigint8ID号9orderIDbigint8与tb_Order表的OrderID字段关联goodsIDbigint8商品IDpricemoney8价格numberint4数量(5)tb_order(订单信息主表)订单信息主表用来保存订单的概要信息。表tb_order的结构如表3.5所示。表3.5表订单信息主表的结构字段名数据类型长度描述OrderID(主键)bigint8订单编号bnumbersmallint2品种数usernamevarchar15用户名Truenamevarchar15真实姓名addressvarchar100联系地址postcodevarchar10邮政编码telvarchar20电话payvarchar20付款方式carryvarchar20运送方式rebatefloat8折扣OrderDatesmalldatetime4订货日期enforceint4是否执行bzvarchar200备注(6)tb_member(会员信息表)会员信息表主要用来存储所注册的会员的信息。表tb_member的结构如表3.6所示。表3.6表会员信息表的结构字段名数据类型长度描述ID(主键)int4会员IDuserNamevarchar20用户名trueNamevarchar20真实姓名passWordvarchar20密码cityvarchar20所在城市addressvarchar100联系地址postcodevarchar6邮政编码10cardNOvarchar24证件号码cardTypevarchar20证件类型gradeint4等级Amountmoney8消费额telvarchar20电话emailvarchar100Email地址freezeint4是否冻结(7)tb_manager(管理员信息表)管理员信息表用来保存管理员信息。表tb_manager的结构如表3.7所示。表3.7表管理员信息表的结构字段名数据类型长度描述ID(主键)int4ID号managervarchar30管理员名称PWDvarchar30密码(8)tb_goods(商品信息表)商品信息表主要用来保存商品信息。表tb_goods的结构如表3.8所示。表3.8表商品信息表的结构字段名数据类型长度描述ID(主键)bigint8商品IDtypeIDint4类别IDgoodsNamevarchar200商品名称introducetext16商品简介pricemoney8定价nowPricemoney8现价picturevarchar100图片文件INTimedatetime8录入时间newGoodsint4是否新品saleint4是否特价hitint4浏览次数(9)tb_BBS(公告信息表)公告信息表主要用来保存商城的公告信息。表tb_BBS的结构如表3.9所示。7表3.9表公告信息表的结构字段名数据类型长度描述ID(主键)int4ID号titlevarchar100公告标题11contentvarchar4000公告内容INTimedatetime8录入时间3.3数据库表之间的关系设计图3-5清晰的表达了各个数据库之间的关系,反映了系统各个实体之间的关系。图3-5数据库内各表的关系3.4用JSP连接数据库在JSP中可以使用Java的JDBC技术,实现对数据库中表记录的查询、修改和删除等操作。JDBC技术在JSP中占有很重要的位置。JDBC(JavaDataBaseConnectivity)是Java数据库连接API。简单地说,JDBC能完成三件事:(1)与一个数据库建立连接(2)向数据库发送SQL语句(3)处理数据库返回的结果JavaBean是一种Java语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean通过提供符合一致性设计模式的公共方法将12内部域暴露成为属性。众所周知,属性名称符合这种模式,其他Java类可以通过自省机制发现和操作这些JavaBean属性。用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、Applet程序或应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。JSP的一个重要特性就是可以用JavaBean实现功能的扩展。将大部分功能放在JavaBean中完成,以使JSP页面程序更干净简洁、利于维护。JavaBean可以很方便的用来捕获页面表单的输入并完成各种业务逻辑的处理。连接数据库的JavaBeanConnDB。通过JSP页面调用此JavaBean,可以实现对数据库的连接,数据表的添加、删除、更新等操作。编译及使用JavaBean例如用JDK的javac命令编译ConnDB.java,得到ConnDB.class文件,即表示建立了一个JavaBean。在JSP页面中要使用这个JavaBean,先使用语句:,通过该引用就可以实现Bean中相关功能函数,这样就可以方便的完成对数据库的增、删、改和查询等操作。134系统详细设计4.1前台部分4.1.1系统架构设计前台部分由用户使用,主要包括新品上架、特价商品、销售排行、购物车、会员管理、商品公告及订单查询、商品查询等。(1)模块功能介绍新品上架:在首页展示几条上架新品的商品信息,点击进该模块后展示更多新上架商品。特价商品:在首页展示几条特价商品信息,点击进该模块后展示更多特价商品。销售排行:统计销售数量再按统计后的销售数量降序排列。购物车:和实际生活中的购物车一样,用于暂时保存挑选的商品。会员管理:包括会员注册、会员登录、会员资料修改三部分。商品查询:在首页选择需要查询的商品种类,查看该类别的全部商品信息,然后单击商品名称查看相应商品的详细信息。(2)前台文件组成首页组成图如图4-1所示。图4-1首页组成图Go购电子商城首页Index.jsp首页主体页面导航条navigation.jsp搜索search.jsp后台登录入口商品分类right.jsp左侧页面left.jsp搜索结果search_deal.jsp14导航栏组成图如图4-2所示。图4-2导航栏组成图左侧页面组成图如图4-3所示。图4-3左侧页面组成图购物车组成图如图4-4所示。图4-4购物车组成图导航栏新品上架NewGoods.jsp首页index.jsp会员资料修改modifyMember.jsp购物车cart_see.jsp查看订单order.jsp特价商品sale.jsp销售排行SellSort.jsp左侧页面会员注册register.jsp会员登录Login_U.jsp商城公告详细页面bbs_detail.jsp商品销售排行详细页面goods_detail.jsp保存订单order.jsp填写订单cart_check.jsp购物车修改数量cart_modify.jsp添加cart_add.jsp清空购物车cart_clear.jsp移除cart_move.jsp查看cart_see.jsp去收银台结账154.1.2网站前台首页设计在Go购电子商城的首页中,用户不但可以在第一时间内掌握商城推出的特价商品、上架新品、最新公告等,还可以查看销售排行、搜索指定商品、商品分类查询等。Go购电子商城前台首页的运行结果如图4-5所示。图4-5网站前台首页的运行结果16下面以列表形式给出前台页面各部分的说明信息,如表4.1所示。表4.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.jsp4.1.3会员管理模块设计在前台的会员管理模块中主要包括会员注册、会员登录、会员资料修改3部分。由于会员资料修改同会员注册的实现方法类似,只是调用的SQL语句不同,所以此处只给出会员注册和会员登录进行介绍。(1)会员注册会员注册的入口位于网站首页的左侧。用户单击【注册】按钮即可进入到会员注册页面Login_U.jsp。会员注册模块由两个页面组成,一个是用于收集用户输入的注册信息的会员注册页面register.jsp,该页面主要由各个表单元素组成,用于提示用户填写注册信息,在用户名的填写框旁还有一个checkUserName.jsp的链接,可以先检测用户名是否可用再继续填写下面的信息。另一个用于将会员注册信息保存到数据表中处理页register_deal.jsp,当用户名已存在就弹出“该用户名已存在,请重新注册!”的提示,并将页面重定向到注册页面;如果用户名不存在则使用member.java中的member类保存客户端输入的会员信息,再通过调用memberDaoImpl.java中的insert()方法将会员信息保存到会员信息表中,如果插入成功则提示“用户注册成功!”,否则提示“用户注册失败!”。其流程图如图4-6所示。17图4-6用户注册系统流程图(2)会员登录会员登录用于网站会员登录本网站进行购物或查看订单情况。会员登录入口位于网站首页的左侧,当用户在登录页面Login_U.jsp中输入用户名和密码后,单击【登录】按钮,系统将对输入的用户名和密码进行验证,如果用户输入的用户名存在并且冻结字段的值不为1,则判断用户输入的密码是否正确,如果密码正确,则重新进入网站首页,显示登录用户的用户名、【修改资料】按钮、【退出登录】按钮,否则提示登录失败。但无论失败还是成功都将页面重定向到主页面index.jsp。其流程图如图4-7所示。开始结束否是是接收注册信息数据是否为空两次密码是否一致查询数据库用户名是否被占用是否否注册成功注册失败18图4-7用户登录流程图4.1.4会员资料修改模块设计个人资料修改模块在前台主页的导航条上,单击“会员资料修改”链接,进入用户资料修改页面modifyMember.jsp,该页面主要给用户修改用户信息,用户只有在登录后才有权限修改个人资料信息。个人信息填写完毕后单击“修改”,则调用member.java中的member类保存客户端更新的会员信息,再通过调用memberDaoImpl.java中的update()方法将会员信息保存到会员信息表中,再在modifyMember_deal.jsp判断用户信息是否成功更新,如果更新成功则提示“会员信息修改成功!”,否则提示“会员信息修改失败!”。个人资料修改模块流程图如图4-8所示。开始结束接收登录信息查询数据库数据是否正确否是登录失败登录成功19图4-8个人资料修改模块流程图4.1.5购物车模块设计购物车模块中,主要包含以下几个功能,即:添加购物车、查看购物车、生成订单和清空购物车。(1)添加至购物车添加购物车就是把用户选中的商品暂时存放在购物车中。当用户在首页或商品详情展示页面goods_detail.jsp中单击“购买”按钮时,运行cart_add.jsp页面将商品的信息从数据库调出来,再重定向到购物车页面cart_see.jsp,便将该商品放入购物车中并查看。添加商品的代码流程是从session中读取cart对象,如果为空则说明还没有进行购物或者已经清空了购物车,需要新建购物车对象;将商品名称与购物车列表中的商品名称对比,如果已经存在,则把商品数量加1。在这段代码流程中,还使用了集合类型。集合类型在Java中又称为向量,是一元集合,可以加入重复数据,它的作用和数组相同,可以保存一系列数据,但集合类型也有它独特的优点,就是可以方便地对集合内的数据进行查找、增加、删除和修改等操作。(2)查看购物车为了方便用户随时查看购物情况,在网站的首页加入了查看购物车的链接,通过它可以将用户所有选中的商品信息放入购物车中显示出来。首先要判断用户是否登录和购物车是否为空,如果用户没登陆,则提示用户还没登陆,然后跳转到主页面;如果购物成为空,则跳转到cart_null.jsp页面,告诉用户物车为空,可以单击其间的“我要购买商品”按钮跳转去主页面选购商品。进入到非空的购物车页面cart_see.jsp,则可以将保存在session中的购物信息利用for语句输出到浏览器中,同时根据商品的现价、购买数量自动计算每种商品的金额和购物车中全部商品的合计金20额。在查看购物车页面还提供了“继续购物”去首页index.jsp、“去收银台结账”去cart_checkout.jsp页面、“清空购物车”去cart_clear.jsp页面和“修改数量”的链接,可以执行接下来要执行的操作。(3)修改购物车中指定商品的购买数量购物车中还需加入修改商品数量的功能才合理。在购物车中,由于商品的数量被存放在文本框中,用户只有在某种商品后面的文本框中输入相应的数量即可。购物车页面中的“修改数量”超链接是为确保修改购买数量而设置的。具体有两种方法可以修改商品数量,一种就是用户可以在cart_clear.jsp页面文本框中输入想要购买的数量,然后单击“修改”按钮。“修改”的执行是在cart_modify.jsp页面中,根据用户的输入修改商品数量,完成修改后再自动重定向到cart_see.jsp页面;另一种就是购物车中已经加入了某种商品,然后去商品信息页面继续购买这种商品,商品数量就会加1,也达到了修改的目的。(4)从购物车中移去指定商品如果欲删除该商品,可以在数量文本框里输入“0”,并需要单击“修改”按钮来更新购物车中商品的数量,也可以直接点击商品“退回”项对应的图标到cart_move.jsp页面执行删除操作后再重定向到cart_see.jsp页面,删除即完成。系统每次只会将1个商品放入购物车中,如果用户需要多个同种商品,可以通过修改商品信息右侧相应文本框的值来完成。(5)清空购物车清空购物车是指当用户订单生成后,倘若还想继续购物一定要清空购物车再进行选购商品,这样防止重复购物,而且不想要购物车中的物品时,也可以单击“清空购物车”来一次性删除全部商品,方便快捷。其实清空购物车实现起来非常简单,在cart_clear.jsp页面中将session中存储的cart对象清空,再重定向到cart_null.jsp页面,此时可以点击其间的“我要去购物”按钮去主页面选购商品。购物车模块流程图如图4-9所示。21开始查询数据库数据是否存在显示商品信息息是是否放入购物车购物车是否为空是没有该商品否否购物车中已存在该商品新建购物车该商品数量加1将商品添加入购物车是否显示购物信息是否修改商品数量否是否清空购物车是删除购物车中商品是是否继续购物否是否去收银台接收填写的订单信息数据是否为空订单信息存入数据库更新是否成功是否是否是修改商品数量是结束否否否是图4-9购物车模块流程图224.1.6收银台模块设计生成订单时网上购物商城的最终目的,前面所有功能的实现都是为最后生成一个用户满意的订单作基础,在此要生成一个可供用户随时查询的订单号,还要保存用户订单中所购买的商品信息。当用户确认对购物车内商品不再改变以后,就可以到收银台结帐并生成订单。结帐的流程为:从购物车cart_see.jsp页面中单击“去收银台结账”,跳转到cart_checkout.jsp页面,系统用户登录名到数据库tb_member表中提取用户的基本信息展示在页面,在用户自己选择付款方式、运送方式、填写备注后单击“提交”按钮,如果必填项都填写了,就跳转到cart_order.jsp页面,否则提示用户数据不完整。在跳转过程中系统根据用户的消费等级在tb_rebate表中级得出相应折扣值,再将相应数据插入数据库中的订单表tb_order中并生成订单号、订单明细表tb_order_detail表,并更新用户tb_member表的消费额,修改用户的消费等级,方便下次购物时计算折扣。如果其间那里没完成,就提示订单生成失败,否则就弹出提示成功生成订单,然后跳转到主页面index.jsp。在生成订单模块中主要使用了调出用户信息并生成唯一订单号,调出用户信息就是完全的对数据库进行操作,利用session对象把登录后的用户名保存起来,在订单生成时把保存的用户名从数据库的用户标中取出即可;生成唯一订单号方法有很多,只要确保订单号码的唯一性及方便用户记录以便于查询自己订单的执行状态即可。4.2后台部分4.2.1后台总体框架后台部分由管理员使用,主要包括对商城内的一些基础数据进行有效管理,包括商品管理、会员管理、订单管理、公告管理等。(1)功能模块介绍商品管理:实现对商品信息的管理,包括分页显示商品信息、添加商品信息、修改商品信息、删除商品信息等功能。会员管理:主要是查看会员基本信息和对于经常失信的会员解冻或冻结。订单管理:主要是执行订单和查看订单的详细信息,但不能修改订单信息。公告管理:主要是查看公告信息、添加公告信息和删除公告信息。23(2)后台文件结构系统后台文件结构,如图4-10所示。图4-10后台文件组成图订单管理manage/ordermanage.jsp执行订单manage/order_enforce.jsp详细信息manage/order_detail.jsp会员管理manage/membermanage.jsp详细信息manage/member_detail.jsp冻结manage/member_freeze.jsp解冻manage/member_thaw.jsp退出后台manage/logout.jsp公告管理manage/placardmanage.jsp删除公告信息manage/Del_deal.jsp添加公告信息manage/placard_add.jsp删除商品信息manage/goods_del.jsp小分类信息管理manage/subType.jsp修改商品信息manage/goods_modify.jsp大分类信息管理manage/superType.jsp详细信息manage/goods_detail.jsp添加商品信息manage/goods_add.jsp商品管理manage/index.jsp后台登录manage/login_m.jsp后台首页244.2.2后台登录模块设计在系统前台首页的底部提供了后台管理员入口,通过该入口可以进入到后台登录页面manage/Login_M.jsp。在该页面,管理员通过输入正确的用户名和密码即可登录到系统后台首页manage/index.jsp。当用户没有输入用户名或密码为空,系统都将通过check.js中的checkM()进行判断并给予提示信息,否则进入到管理员登录处理页验证用户信息。(1)设计管理员登录界面管理员登录页面主要实现收集用户输入信息及通过JavaScript的自定义函数验证用户身份。管理员登录页面所涉及的重要表单元素如表4.2所示。表4.2管理员登录页面所涉及的重要表单元素名称元素类型含义重要属性form1form表单action=“login_M_deal.jsp”Managetext管理员名size=“20”PWDpassword密码Size=“20”Submitbutton“确认”按钮Value=“确认”onClick=“checkM(form1)”Submit3button“返回”按钮Value=“返回”“onClick=window.location.href=./index.jsp;”(2)编写用户身份验证的JSP处理页当用户在登录窗口中输入用户名和密码后,单击“确认”按钮,系统将在页面对输入的用户名和密码进行验证:如果用户输入的用户名存在,则判断用户名输入的密码是否正确,如果密码也正确,则进入到网站后台首页,这时管理员才可以对系统后台进行管理,否则就回到前台的首页。其流程图如图4-11所示:否是是否结束查询数据库登录成功开始接收登录信息数据是否为空数据是否有效25图4-11管理员登录系统流程图为了防止一些不法份子蓄意破坏,需要为网站
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中学英语口语表达能力训练
- 客户投诉处理流程与满意度提升
- 企业食品安全管理与培训讲稿
- 幼儿园科学课程活动方案总结
- 校园之星:班长小明的故事8篇
- 跨境贸易合同风险防范与法律解析
- 语文教师阅读教学能力提升方案
- 数据结构课程设计表达式求解方案
- 2025-2030光伏玻璃轻薄化技术演进及双玻组件市场需求增长预测报告
- 2025-2030光伏储能一体化系统成本优化路径及商业模式研究报告
- 2025年华能上海电力检修有限责任公司招聘笔试参考题库含答案解析
- 保洁日常标准培训
- 人教版八年级物理上册《第一章机械运动》单元测试卷(含答案)
- 全国第三届职业技能大赛(工业机器人系统操作项目)选拔赛理论考试题及答案
- 高一 人教A版 数学 第三章《幂函数》课件
- 氩气瓶的安全使用要求
- 《大模型原理与技术》全套教学课件
- 糖尿病足的影像学鉴别诊断
- 象棋入门课件教学
- 第47届世界技能大赛江苏省选拔赛精细木工项目技术文件(初稿)
- VR医学模拟手术训练系统
评论
0/150
提交评论