版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计(论文)基于Java的在线购物系统的设计与实现论文作者姓名:申请学位专业:申请学位类别:指导教师姓名职称:论文提交日期:基于Java的在线购物系统的设计与实现摘 要电子商务(Electronic Commerce)是互联网上出现的新概念。它是利用计算机技术、网络技术和远程通信技术,实现整个商务(买卖)过程中的电子化、数字化和网络化。随着它的广泛使用,给人们带来了便利,并逐渐改变了人们的生活方式. 国内在线购物网站多数是用ASP,PHP技术实现的,而基于JSP的优秀网站较少。本系统网上图书超市采用JSP+JavaBean+ SQL Server数据库三层模式设计并实现。本论文详细地阐述了
2、系统的需求分析、系统总体架构、详细设计以及模块的实现过程,主要实现了以下模块功能:会员注册、登录/注销;用户管理;浏览图书详细信息;图书搜索;图书管理;购物车;订单;订单管理等。关键词: JSP;SQL Server;JavaBean;在线购物Design and Implementation of online shopping system based on JavaAbstractElectronic commence over Internet is a new concept. To realize electronic, digital and networking commerc
3、e, computer technology, network technology and HYPERLINK :/dict /dict_result.aspx?r=1&t=telecommunications&searchword=%e8%bf%9c%e7%a8%8b%e9%80%9a%e4%bf%a1%e6%8a%80%e6%9c%af telecommunications are used. With its widely used, it brings people with a lot of convenience, and is changing the way of peopl
4、es life.Most domestic online shopping websites are implemented with ASP, PHP, and few are based on JSP. This systemweb-based bookstore is implemented with JSP, JavaBean, and SQL Server database in three-tier model. In the paper, HYPERLINK :/dict /dict_result.aspx?r=1&t=requirements+analysis&searchwo
5、rd=%e9%9c%80%e6%b1%82%e5%88%86%e6%9e%90 requirements analysis, general framework, HYPERLINK :/dict /dict_result.aspx?r=1&t=detailed+design&searchword=%e8%af%a6%e7%bb%86%e8%ae%be%e8%ae%a1 detailed design and realization of each module are introduced. These modules includes member registration, login
6、in/login out, user management, browsing books detailed information, searching book, library management, the shopping car, orders and orders management etc. Key words: JSP;SQL Server;JavaBean; Online Shopping目 录论文总页数:29页 TOC o 1-3 h z u HYPERLINK l _Toc169604652 1引言 PAGEREF _Toc169604652 h 1 HYPERLIN
7、K l _Toc169604653 1.1课题背景 PAGEREF _Toc169604653 h 1 HYPERLINK l _Toc169604654 1.2国内外研究现状 PAGEREF _Toc169604654 h 1 HYPERLINK l _Toc169604655 1.3本课题的研究方法 PAGEREF _Toc169604655 h 2 HYPERLINK l _Toc169604656 2关于JSP PAGEREF _Toc169604656 h 2 HYPERLINK l _Toc169604657 2.1JSP简介 PAGEREF _Toc169604657 h 2 H
8、YPERLINK l _Toc169604658 2.2JSP的运行原理 PAGEREF _Toc169604658 h 2 HYPERLINK l _Toc169604659 2.3JSP页面的组成 PAGEREF _Toc169604659 h 3 HYPERLINK l _Toc169604660 2.4JSP的运行环境 PAGEREF _Toc169604660 h 3 HYPERLINK l _Toc169604661 2.5JavaBean技术介绍 PAGEREF _Toc169604661 h 4 HYPERLINK l _Toc169604662 3需求分析 PAGEREF _
9、Toc169604662 h 4 HYPERLINK l _Toc169604663 3.1系统说明 PAGEREF _Toc169604663 h 4 HYPERLINK l _Toc169604664 3.2系统功能简介 PAGEREF _Toc169604664 h 4 HYPERLINK l _Toc169604665 4系统设计 PAGEREF _Toc169604665 h 5 HYPERLINK l _Toc169604666 4.1功能模块 PAGEREF _Toc169604666 h 5 HYPERLINK l _Toc169604667 4.2系统设计思想 PAGEREF
10、 _Toc169604667 h 6 HYPERLINK l _Toc169604668 4.3系统总体流程 PAGEREF _Toc169604668 h 6 HYPERLINK l _Toc169604669 4.4网站架设 PAGEREF _Toc169604669 h 7 HYPERLINK l _Toc169604670 4.4.1开发环境 PAGEREF _Toc169604670 h 7 HYPERLINK l _Toc169604671 4.4.2建立站点 PAGEREF _Toc169604671 h 7 HYPERLINK l _Toc169604672 4.5数据库设计
11、PAGEREF _Toc169604672 h 7 HYPERLINK l _Toc169604673 5系统实现 PAGEREF _Toc169604673 h 9 HYPERLINK l _Toc169604674 5.1编写JavaBean PAGEREF _Toc169604674 h 9 HYPERLINK l _Toc169604675 5.1.1数据库操作的JavaBean的实现 PAGEREF _Toc169604675 h 10 HYPERLINK l _Toc169604676 5.1.2字符串处理的JavaBean的实现 PAGEREF _Toc169604676 h 1
12、0 HYPERLINK l _Toc169604677 5.1.3保存购物信息的JavaBean的实现 PAGEREF _Toc169604677 h 10 HYPERLINK l _Toc169604679 5.2网站前台主要功能模块实现 PAGEREF _Toc169604679 h 11 HYPERLINK l _Toc169604680 5.2.1网站前台首页设计 PAGEREF _Toc169604680 h 11 HYPERLINK l _Toc169604681 5.2.2重点推荐展台的实现过程 PAGEREF _Toc169604681 h 11 HYPERLINK l _To
13、c169604682 5.2.3新书上架实现过程 PAGEREF _Toc169604682 h 13 HYPERLINK l _Toc169604683 5.2.4图书分类实现过程 PAGEREF _Toc169604683 h 13 HYPERLINK l _Toc169604684 5.2.5用户管理实现过程 PAGEREF _Toc169604684 h 14 HYPERLINK l _Toc169604685 5.2.6购物车实现过程 PAGEREF _Toc169604685 h 15 HYPERLINK l _Toc169604686 5.2.7生成订单实现过程 PAGEREF
14、_Toc169604686 h 19 HYPERLINK l _Toc169604687 5.2.8订单查询实现过程 PAGEREF _Toc169604687 h 20 HYPERLINK l _Toc169604688 5.2.9销售排行实现过程 PAGEREF _Toc169604688 h 20 HYPERLINK l _Toc169604689 5.3网站后台主要功能模块设计 PAGEREF _Toc169604689 h 21 HYPERLINK l _Toc169604690 5.3.1后台登录实现过程 PAGEREF _Toc169604690 h 21 HYPERLINK l
15、 _Toc169604691 5.3.2图书管理页面实现过程 PAGEREF _Toc169604691 h 21 HYPERLINK l _Toc169604692 5.3.3用户管理实现过程 PAGEREF _Toc169604692 h 23 HYPERLINK l _Toc169604693 5.3.4订单管理实现过程 PAGEREF _Toc169604693 h 24 HYPERLINK l _Toc169604694 5.3.5公告管理实现过程 PAGEREF _Toc169604694 h 25 HYPERLINK l _Toc169604695 5.3.6退出系统实现过程 P
16、AGEREF _Toc169604695 h 25 HYPERLINK l _Toc169604696 6系统测试 PAGEREF _Toc169604696 h 25 HYPERLINK l _Toc169604697 6.1测试环境 PAGEREF _Toc169604697 h 25 HYPERLINK l _Toc169604698 6.2测试结果 PAGEREF _Toc169604698 h 26 HYPERLINK l _Toc169604699 总 结 PAGEREF _Toc169604699 h 26 HYPERLINK l _Toc169604700 参考文献 PAGER
17、EF _Toc169604700 h 27 HYPERLINK l _Toc169604701 致 谢 PAGEREF _Toc169604701 h 28 HYPERLINK l _Toc169604702 声 明 PAGEREF _Toc169604702 h 29 引言课题背景随着Internet国际互联网的开展,越来越多的企业开始建造自己的网站。基于Internet的信息效劳,商务效劳已经成为现代企业一项不可缺少的内容。很多企业都已不满足于建立一个简单的仅仅能够发布信息的静态网站。现代企业需要的是一个功能强大的,能提供完善的电子商务效劳的动态商务网站。JSP是Sun公司推出的一种网站开
18、发技术,Sun公司借助自己在Java上的非凡造诣,又把人们引进JSP时代,JSP即Java Server Page,它可以在Servlet和JavaBean的支持下,完成功能强大的Web应用程序。JSP网站架设将成为未来网站架设的趋势,而国内电子购物网站多数是用ASP,PHP技术实现的,而基于JSP的优秀网站较少。所以,在我的毕业设计中,我采用了JSP作为开发工具,构建了一个能实现简单的电子商务的小型动态商务网站网上图书超市销售系统。该系统能实现用户的注册、登录功能;能够实现商品的查询,订购等功能。该系统根本上具备一个网上商品销售系统应该具备的功能,该设计工程根本上表达了构建一个动态商务网站所
19、需要的技术,可以说,目前的大型商务网站也就是我们这个小型网站在内容上的扩充和重复。国内外研究现状伴随着Internet向我们大踏步走来,国内外网上交易已开始逐步普及,电子商务将成为21世纪主流的商业模式。网上图书超市作为电子商务中的一种,是随着这些网络技术的开展而出现的一种新型图书销售渠道。它通过人与电子通信方式的结合,依靠计算机网络,以通讯技术为根底,实现图书销售的网上交易。网上图书超市同传统的店面书店相比,网上图书超市的经营方式和销售渠道是全新的;它24小时的全天候和全方位效劳是店面书店所不能比及的;本钱低廉更是开设网上图书超市的主要原因。而与其他商品相比,书籍运送几乎不怕碰撞碎裂,不具时
20、效性;同时书本具有功能单一,形式简单,易于判断和选择而独具优势,最适合于网上交易;再次是单价低,降低了消费者第一次在网络购物的门槛,所以网上图书超市成了电子商务的先锋。现在这一切正在朝着更人性化的方向开展。随着Internet技术的迅速开展和日益普及,市场竞争日益剧烈,利用网络进行效劳和管理已经成为一种趋势.网络的开展给用户带来了很大的方便, 风起云涌的网站在炒足了概念之后,都纷纷转向了务实,而务实比拟鲜明的特点之一:是绝大多数的网站都在试图做实实在在的网上交易,所谓网上交易就是利用计算机技术、网络技术和远程通信技术,实现整个商务(买卖)过程中的电子化、数字化和网络化,它具有如下优势:(1)更
21、广阔的环境:人们不受时间的限制,不受空间的限制,不受传统购物的诸多限制,可以随时随地在网上交易。(2)更广阔的市场:在网上这个世界将会变得很小,一个商家可以面对全球的消费者,而一个消费者可以在全球的任何一家超市购物。 (3)更快速的流通和低廉的价格:网上超市减少了商品流通的中间环节,节省了大量的开支,从而也大大降低了商品流通和交易的本钱。(4)更符合时代的要求:如今人们越来越追求时尚、讲究个性,注重购物的环境, 网上购物,更能表达个性化的购物过程。本课题的研究方法本次毕业设计应首先分析淘宝网、易趣网等购物网站的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识包
22、括计算机网络技术、相关协议、信息平安、JSP等相关知识等,选择所熟悉的开发工具进行本毕业设计的开发;在设计中以需求分析为根底,写出系统开发方案、实现流程及相关问题的实现方法。关于JSPJSP简介JSPJava Server Pages是一种建立在Servlet标准提供的功能之上的动态网页技术,和ASP类似,它们都是在通常的网页文件中嵌入脚本代码,用于产生动态内容,不过JSP文件中嵌入的是JAVA代码和JSP标记。JSP文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求,所以JSP也可以看成是运行时的Servlet。Servlet是JAVA对CGI的回应。它
23、们在效劳器上执行和解释浏览器的请求,承当客户端和其他应用程序之间的中间层的角色。Servlet主要是把动态的内容混合到静态的内容中以产生HTML。JSP页面在HTML元素中潜入JAVA脚本代码和JSP标记,使得文件长度变短,格式更加清晰。另一方面,JSP把静态和动态的内容别离开来,实现了内容和表示的别离。使用JSP,不需要单独配置每一个文件,只要扩展名是.jsp,JSP容器也是Servlet容器就会自动识别,将其转换为Servlet为客户端效劳。术语WEB容器和JSP容器是同义的。JSP的运行原理在JSP第一次获得来自于客户端浏览器的请求时,JSP文件将被JSP引擎JSP engine转换成一
24、个Servlet,即将.jsp文件编译成Java Class文件。当Servlet引擎接收到请求后,如果设置了使用最新的JSP,它就会去找JSP文件,检查该文件在上次编译后是否改动过。如果改动过,就会重新编译生成新的Servlet,最终将请求转交给编译好的Servlet引擎执行。在编译时如果发现JSP文件有任何语法错误,转换过程将中断,并向客户端发出出错信息;如果编译成功,那么所转换产生的Servlet代码被编译,然后该Servlet被JSP引擎加载到内存中。此时JSP引擎还请求了jspInit()方法的执行,并对此Servlet初始化。JspInit()方法在Servlet的生命周期中只被请
25、求一次,然后将被调用来处理客户端的请求和回复操作。对于所有随后对该JSP文件的请求,效劳器将检查该JSP文件自最后一次被存取后是否经过修改。如果没有修改,那么将请求交还给还在内存中的Servlet的jspService()方法,执行回复操作。由于Servlet始终驻于内存,所以响应是非常快的。Jsp页面在第一次访问时由于要转化和编译,运行速度较慢,但是当第二次访问该页时,由于文件已经被编译成字节码文件了,所以速度非常得快。JSP页面的组成JSP页面看上去像标准的HTML和XML页面,并附带有JSP引擎能够处理和解析执行的代码与组件。通常,JSP代码和组件用于创立在最终页面上显示的文本。通常来说
26、,JSP页面包括编译指令,声明,表达式等内容。(1)编译指令:使用JSP编译指令% 和 %内的来指定所使用的脚本语言,Servlet实现的接口,Servlet扩展的类,Servlet导入的软件包。JSP指令的一般语法形式为:。 (2)声明:用于声明合法的变量和方法。与任何语言相同,JSP语言使用变量来保存数据。这些变量用declaration元素声明,声明的语法为。当页面被初始化的时候,JSP页面中的所有声明都被初始化。除了简单的变量,方法也能被声明。声明不对当前的输出流产生任何影响。(3)表达式:通过计算表达式所得到的结果来表示某个值。表达式的形式为:。表达式求值的结果被强制转换为一个字符串
27、,并插入到当前的输出流中。JSP的运行环境要运行Jsp注意,不是浏览Jsp页面,需要有支持Jsp的效劳器。这里分2种情况:一种是自身就支持Jsp的效劳器,如Jrun,Weblogic,JSWDK等;而另一种那么是在不支持Jsp的效劳器上安装Jsp引擎的插件,如在IIS,Apache等效劳器上安装WebSphere,tomcat,Resin等插件。其中主流效劳器是Weblogic和tomcat.Tomcat效劳器是Apache Group Jakarta小组开发的一个免费效劳器软件,适合于嵌入Apache中使用,而且,它的源代码可以免费获得,你可以自由地对它进行扩充。访问的地址 :/jakart
28、a. /tomacat/index.html, Tomcat效劳器的兼容性很好,如WebLogic效劳器采用其为Web效劳器引擎,Jbuilder将其作为标准的测试效劳器,Sun公司也将其作为JSP技术应用的例如效劳器。缺乏之处是它的配置比拟麻烦,而且有一些平安性的问题没有解决。但是Tomcat效劳器有众多大软件公司的支持,而且效劳器的性能稳定,其开展前景很好。JavaBean技术介绍JavaBean技术是一种基于Java的组件技术,JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据的提取等,是解决代码重用问题的一种策略。以前的组件无法实现真正的代码重用,其主要原因就
29、是它们对于处理平台的依赖和对开发语言的依赖过重。由于Java语言在这些方面所具有的特点和优势,使得基于它的软件JavaBean组件技术倍受人们的关注。它的任务就是:一次编写,可以在任何地方执行,可以在任何地方重用。JavaBean组件可以在任何地方冲用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。为了创立和使用Java软件组件,JavaBean被实现为一种独立于平台和结构的应用程序接口,它的实现可忽略内部的结构及细节问题,只需要定义其外部的特征及对外功能就行。其中,属性、方法和事件三种接口可以独立对外进行开发。JavaBean的实质就是一个.class
30、文件,也可以成为类文件。JavaBean以binary格式保存,可以保护Java源代码不容易被他人抄袭。需求分析系统说明本系统是一个中小型的电子商务系统网上图书超市,可以为各类用户提供方便的在线买书环境,符合目前国内流行的电子商务模式。用户可以在系统中实现注册、浏览图书、搜索查询图书、下订单、处理订单等功能;管理员可以通过用户管理、订单管理、图书管理、公告管理、投票管理等管理功能来对系统进行维护更新。系统功能简介网上图书超市系统是一个典型的JSP数据库开发应用程序,由前台商品展示及销售、后台管理2局部组成。前台商品展示及销售该局部主要包括新书上架、重点推荐、销售排行、购物车、会员管理、收银台及
31、订单查询、商品查询等。后台管理该局部主要对商城内的一些根底数据进行有效管理,包括图书管理、用户管理、订单管理、公告管理等。系统设计功能模块网上图书超市的前台功能结构如图1所示图书超市前台图书展台收银台会员管理购物车网上调查重点推荐新书上架订单查询销售排行图书分类浏览网上调查查看调查结果添加至购物车清空购物车移出图书查看购物车填写订单信息购书结帐会员注册会员资料修改会员登录订单查询图1前台功能结构图网上图书超市的后台功能结构如图2所示 图书超市后台图书管理用户管理订单管理公告管理投票管理退出查看图书信息添加图书信息修改图书信息删除图书信息查看用户信息冻结/解冻查看订单信息执行订单查看公告信息添加
32、公告信息删除公告信息浏览投票工程添加投票工程删除投票工程退出后台管理图2 后台功能结构图系统设计思想本系统采用三层架构设计,它的工作原理如图3所示。图3三层架构拓扑图采用三层构架以后,用户界面层通过统一的接口向业务层发送请求,业务层按自己的逻辑规那么将请求处理之后进行数据库操作,然后将数据库返回的数据封装成类的形式返回给用户界面层。这样用户界面层甚至可以不知道数据库的结构,它只要维护与业务层之间的接口即可。系统总体流程图4 用户流程图由于后台管理流程图与用户流程图根本相同,因此只例出如图4用户流程图网站架设4.4.1开发环境硬件平台:CPU:P41.8GHz;内存:256MB以上。软件平台:操
33、作系统:Windows 2000 Server;数据库:SQL Server 2000;开发工具包:JDK Version1.5JSP效劳器:Tomcat 5.5浏览器:IE5.0及以上版本,推荐使用IE6.0;分辨率:最正确效果1024768。JDBC驱动: JDBCODBC Driver4.4.2建立站点在Tomcat 5.5webapps文件夹下以网上图书超市系统的名称BookSupermarket建立文件夹,然后在BookSupermarket下建立WEB-INF注意全部是大写文件夹,最后在WEB-INF下建立classes文件夹,lib文件夹及web.xml保存类文件,需要的包保存储
34、信息及站点的信息。数据库设计本系统数据库采用SQL Server 2000数据库,系统数据库名称为db_bookmanage,共包含8张表,根据工程的需求建立相应的数据表的设计结果如下面所示:表1图书信息表tb_bookinfo字段名数据类型长度允许空说明ISBNvarchar15图书ISBN号,主键BookNamevarchar200图书名Typevarchar50图书类别名称publishervarchar100出版社名称Writervarchar100作者Introducetext16yes图书简介Pricemoney8价格pDatevarchar50yes出版日期covervarcha
35、r100yes图书的封面文件名称INTimedatetime8图书信息录入时间newbookint4标志是否为新书commendint4yes标志是否推荐该图书,1为推荐,默认值为0表不推荐表2用户信息表tb_Member字段名数据类型长度允许空说明IDint4主键自动编号,用户ID号usernamevarchar4no用户名TrueNamevarchar20no用户的真实姓名PassWordvarchar20用户密码cityvarchar20所在城市addressvarchar100 Postcodevarchar6邮政编码CardNOvarchar24yes证件号码CardTypevarc
36、har20yes证件类型gradeint4yes用户等级Amount money8yes消费金额Telvarchar20yes联系 Emailvarchar100Email地址freezeint4yes是否被冻结,为1表示被冻结,为0表示未被冻结表3订单信息主表tb_Order字段名数据类型长度允许空说明Order IDbigint8自动编号,订单编号bnumbersmallint2品种数usernamevarchar15用户名Truenamevarchar15用户真实姓名addressvarchar100 postcodevarchar10邮政编码telvarchar20联系 emailva
37、rchar100E-mail地址payvarchar20付款方式carryvarchar20运送方式rebatefloat8折扣OrderDatesmalldatetin4订单日期bzvarchar200yes备注信息enforceint4yes标志是否被执行,值1表示已被执行,为0表示未被执行表4订单信息明细表tb_order_detail字段名数据类型长度允许空说明IDbigint8订单信息明细的自动编号orderIDbigint8订单号ISBNvarchar20图书ISBN号pricemoney8单价numerint4购置数量表5折扣信息表tb_rebate字段名数据类型长度允许空说明g
38、radevarchar20自动编号,等级Amountmoney8消费金额rebatefloat8打折比率表6管理员信息表tb_manager字段名数据类型长度允许空说明IDint4自动编号managervarchar30管理员名称PWDvarchar30 密码表7公告信息表tb_BBS字段名数据类型长度允许空说明IDint4自动编号contentvarchar4000公告内容INTimedatetime8 yes公告的内容,默认值为getdate()表8投票信息表tb_Poll字段名数据类型长度允许空说明IDint4自动编号optionNamevarchar50投票工程pollint4票数,默
39、认为0系统实现编写JavaBean根据系统的需求编写需要的JavaBean。下面将给出网上图书超市需要的JavaBean的编写过程。5.1.1数据库操作的JavaBean的实现在系统开发过程中经常需要对数据库操作,这就需要连接数据库和操作数据库包括数据的插入,更新,删除和查询等,数据库操作的JavaBean是一个公共类,通常包括连接数据库的方法getConnection、执行查询语句的方法executeQuery、执行更新操作的方法executeUpdate、关闭数据库连接的方法close。因此程序开发就可以将连接数据库和操作数据库的代码写成了一个JavaBean “connDB.java,编
40、写完成后将其源代码放到Tomcat 5.5webappsBookSupermarketWEB-INFsrcbeans文件夹中。1指定JavaBean“connDB保存的包,并导入所需的类包,并将其保存到“beans包中。2在构造方法connDB中定义该类中所需的变量。通常将方法中常用的变量均放在构造方法中。3创立执行查询语句的方法executeQuery,返回值为ResultSet结果集。4创立执行更新操作的方法executeUpdate,返回值为int型的整数,代表更新的行数。5创立执行更新操作,并返回该操作中自动编号字段的自动编号的方法executeUpdate_id。6创立关闭数据库连接
41、的方法close。7编译connDB.java,用“javac connDB.java,生成connDB.class,将其放到Tomcat 5.5webappsBookSupermarketWEB-INFclassesbeans文件夹中。5.1.2字符串处理的JavaBean的实现字符串处理的JavaBean是解决程序中经常出现的有关字符串处理问题的方法的类。包括将数据库中及页面中有中文问题的字符串进行正确的显示和存储的方法chStr和将字符串中的回车换行、空格及HTML标记符正确显示的方法convertStr两个方法。下面是编写网上图书超市的字符串处理的JavaBean“chStr的详细过程
42、。1编写解决输出中文乱码问题的方法chStr。2接着编写显示文本中的回车换行、空格及保证HTML标记的正常输出的方法convertStr。5.1.3保存购物信息的JavaBean的实现在购物车程序中需要使用一个bookelement对象保存所选图书信息,生成该对象的JavaBean “bookelenent.java程序代码。网站前台主要功能模块实现5.2.1网站前台首页设计根据前期的分析及客户的要求,网上图书超市的前台主要包括重点推荐展台,新书上架,图书分类,图书查询,用户管理,购物车,订单生成,订单查询和销售排行等模块。在网上超市前台首页的运行结果如下列图5所示图5首页5.2.2重点推荐展
43、台的实现过程1在网站前台的居中位置,分栏列出了超市推荐的图书信息,主要包括图书封面,名称,出版社,作者及定价等信息。同时列置了“添加至购物车按钮和“查看按钮,分别用于将图书添加至购物车和查看图书的详细信息。重点推荐图书信息同图书根本信息同时保存在图书信息表tb_bookinfo中,以字段commend标识,当commend字段的值为1时,代表该图书为重点推荐图书。查询重点推荐图书的代码如下:这里需要注意的是,“添加购物车按钮只有在用户登录后才可以显示,即是只有登录的用户才可以购置图书。2根据图书的ISBN号查询图书的详细信息,图书详细页面的运行结果如图6所示:图6图书简介在book_detai
44、l.jsp页面中首先查询符合ISBN值的图书信息,关键代码如下:将查询结果显示到页面中,此时需要对“图书简介进行处理,以便正确显示回车换行和空格符。关键代码如下: /此处省略了显示图书信息的HTML代码 5.2.3新书上架实现过程在前台首页中,单击“新书上架超链接可以进入到新书上架页面newbook.jsp,运行结果如图7图7新书上架上架新书消息保存在图书信息表tb_bookinfo中,以字段newbook标志,当newbook字段的值为1时,代表该图书为上架新书。上架新书页面关键代码:5.2.4图书分类实现过程为了方便用户查询所需图书信息,在网站中设置了图书分类显示模块。单击导航条中的“图书
45、分类超链接即可进入图书分类显示页面,在该页面左的“图书分类列表中列出数据库中的全部图书类别,用户单击即可在右显示该图书信息列表,单击书名可以查看相应图书的详细信息,如果用户已经登录,还可以直接将图书信息添加到购物车中,图书分类显示页面的运行结果如图8图8图书分类在图书分类页面BookSort.jsp左的“图书分类列表中列出了数据库中的全部图书类别,查询图书类别主要通过Select语句的Group By字句实现,具体过程:显示图书分类信息时,需要注意的是,不能再使用while语句,而应该使用dowhile语句,否那么少一条记录,这是因为在指定图书默认类别时,已经应用rs_Type.next()语
46、句将记录指针移动到下一条记录了,显示图书分类信息的关键代码: /此处省略填写订单信息代码在图书分类页面BookSort.jsp的右侧的图书列表中将显示指定类别的图书信息。当用户没有选择类别,可以通过获取类别结果集rs_Type中的第一条记录的值指定默认类别,否那么应用request对象的getParameter方法来获取选择的类别并查询,局部代码:String PType=;if (request.getParameter(Type)!=null)PType=chStr.chStr(request.getParameter(Type);elseif(rs_Type.next()PType=rs
47、_Type.getString(Type);elseresponse.sendRedirect(index.jsp);ResultSet rs_book=connDB.executeQuery(select * from tb_bookinfo where Type=+PType+);%5.2.5用户管理实现过程用户管理主要包括用户注册,用户登录,用户个人资料修改,由于用户个人资料修改比拟简单,不多做说明。用户注册为了统一管理,系统规定只有会员才能购置图书,所以要购置图书的新用户必须先进行用户注册。用户注册的入口位置在网站首页的左侧。用户点击“注册即可进入用户注册页面,如图9图9用户注册网站要
48、求用户名必须唯一,用户可以先看自己的用户名是否被注册。由于是网络程序,所以注册后在保存用户信息时候,还需要再次对注册用户进行检测。如果不存在,那么保存该用户信息。否那么提示该名用户已经被注册,请重新注册。保存用户注册信息页面register_deal.jsp。用户登录用户登录窗口如图10图10用户登录如果用户输入的用户名存在,并且冻结字段的值不为1,那么判断用户输入的密码是否正确,如果密码也正确,那么成功登录,否那么提示登录失败。5.2.6购物车实现过程购物车主要包括所选图书的添加,查看购物车,单件图书购置数量的修改,清空购物车4局部。添加到购物车cart_Add.jsp主要采用Vector类
49、型的变量cart来存储购物数据的,被保存在Session中,然后将图书信息保存到cart中,主要代码:String ISBN=chStr.chStr(request.getParameter(ISBN);String sql=select * from tb_bookinfo where ISBN=+ISBN+;ResultSet rs=connDB.executeQuery(sql);float price=0;if(rs.next()price=rs.getInt(price);bookelement mybookelement=new bookelement();mybookelemen
50、t.ISBN=ISBN;mybookelement.price=price;mybookelement.number=1;boolean Flag=true;Vector cart=(Vector)session.getAttribute(cart);if(cart=null)cart=new Vector();elsefor(int i=0;i查看购物车查看购物车页面cart_see.jsp的顶部首先需要判断购物车是否为空,如果为空将页面直接跳转到购物车为空页面cart_null.jsp,否那么显示购物车信息。显示购物车信息主要是将保存在Session中的数据利用for语句输出到IE中,同时
51、根据图书的定价,购置数量自动计算每种图书的金额和购物车中的全部图书的合计金额。代码如下:Vector cart=(Vector)session.getAttribute(cart);if(cart=null | cart.size()=0)response.sendRedirect(cart_null.jsp);else/此处插入显示购物车信息的代码,将在下面给出% /此处省略填写订单信息代码%float sum=0;float pric=0;String ISBN=;String bookname=;String publisher=;for(int i=0;i /此处省略填写订单信息代码
52、!-function check()if(isNaN(form1.num.value)alert(请不要输入非法字符);return false;history.back();if(form1.num.value=)alert(请输入修改的数量);return false;history.back();-图11 购物车如图11由于在购物车中并没有保存图书的名称,所以在获取图书信息时,还需根据图书的ISBN号重新到数据表中查图书名称,代码如下: ResultSet rs_newbook=connDB.executeQuery(select * from tb_bookinfo where ISB
53、N=“+ ISBN+);If(re_book.next()Bookname=re_book.getString(“Bookname);从购物车中移去指定图书实现从购物车中移去指定图书可以通过Vector类的removeElementAt(int index)方法实现,非常方便。页面cart_move.jsp代码为:Vector cart=(Vector)session.getAttribute(cart);tryString ID=request.getParameter(ID);int id=Integer.parseInt(ID);cart.removeElementAt(id);/移去指
54、定图书信息session.setAttribute(cart,cart);response.sendRedirect(cart_see.jsp);catch(Exception e)%清空购物车实现的方法很简单,只需要将保存在Session中的购物信息清空即可,清空购物车页面cart_clear.jsp代码为:session.removeAttribute(cart);response.sendRedirect(cart_null.jsp);5.2.7生成订单实现过程生成订单时,不但要保存用户订单中所购置的图书信息和订单信息,同时还需要返回一个可供用户随时查询的唯一订单号。用户查看购物车页面中
55、的“去收银台结帐超连接即可进入到收银台页面填写订单信息,在该页面中系统会根据用户登录的用户名自动填写用户根本信息,除用户名不可更改外,其他的均可修改,收银台页面的运行结果如图12图12收银台在收银台页面cart_checkout.jsp中,首先应用判断用户是否已经购物,然后再判断用户是否登录,如果用户没有购物或是没有登录都将给予提示并返回到网站首页。关键代码为:%if(session.getAttribute(cart)=)out.println(alert(您还没有购物!);window.location.href=index.jsp;);String Username=;Username=
56、(String)session.getAttribute(UserName);if (Username!=)tryResultSet rs_user=connDB.executeQuery(select * from tb_Member where username=+Username+);if(!rs_user.next()session.invalidate();out.println(alert(请先登录后,再进行购物!);window.location.href=index.jsp;);return;elseString Truename=rs_user.getString(Truen
57、ame);String address=rs_user.getString(address);String postcode=rs_user.getString(postcode);String tel=rs_user.getString(tel);String email=rs_user.getString(email);%5.2.8订单查询实现过程订单查询实现页面是为用户查询订单信息执行状态而设计的,用户成功登录后,单击网站中的“订单查询,即可进入到订单查询页面,该页面列出当前用户的全部订单概要信息列表。查询订单概要信息主要从订单主表tb_order中根据当前登录的用户名获取订单信息,关键
58、代码如下:ResultSet rs=connDB.executeQuery(select * from tb_Order where username=+(String)session.getAttribute(UserName)+);并根据订单编号查看订单的详细信息。5.2.9销售排行实现过程该页面运行结果如图13所示图13销售排行销售排行数据主要是将销售明细表中的数量ISBN字段分组并统计销售数量再应用子查询获取销售数量最高的前10本图书,最后再使用连接查询获取相应的图书信息,关键代码如下:ResultSet rs_sort=connDB.executeQuery(select * fro
59、m (select top 10 * from ( select sum(number) as amount,ISBN from tb_Order_detail group by ISBN )as tab order by amount desc) o inner join tb_bookinfo b on o.ISBN=b.ISBN order by o.amount desc);网站后台主要功能模块设计在后台设计中主要有7个模块,分别是:后台登录,图书管理,用户管理,订单管理。公告管理,投票管理,退出。5.3.1后台登录实现过程后台登录页面运行结果如图14图14后台登录为了网站的平安,防止
60、一些不法分子蓄意破坏,需要为网站后台设计用于验证用户身份的文件safe.jsp,完整代码如下:%if (session.getAttribute(UserName)=null)out.println(alert(您还没有登录!);window.location.href=index.jsp;);%然后,在网站首页后的每个页面都参加以下代码:这样当用户没有正常登录时,即可弹出“您还没有登录的提示对话框,确定后将退出后台页面,返回网站首页。5.3.2图书管理页面实现过程图书管理模块主要实现对图书信息的管理,包括分页显示图书信息,添加图书信息,修改图书信息,删除图书信息等功能。分页显示图书信息分页显
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 九年级语文下册 第三单元 9《鱼我所欲也》教学设计 新人教版
- 甘肃省武威市凉州区永昌镇和寨九年制学校九年级化学上册 1.3 走进化学实验室教案3 (新版)新人教版
- 2024年五年级品社下册《从四大发明说起》教案 浙教版
- 2024-2025学年高中历史 第三单元 第10课 辽夏金元的统治教案 新人教版必修《中外历史纲要(上)》
- 2024年加工承揽合同:航空零件加工与组装合同
- 04年企业信息化建设升级合同
- 2024五星级酒店厨师与餐饮服务劳务合同
- 2024年全屋定制家具设计与施工合同
- 2024年型号5G网络设备采购协议
- 2024年军事院校食堂餐饮供应合同
- MT 220-1990煤矿用防爆柴油机械排气中一氧化碳、氮氧化物检验规范
- GB/T 7354-2003局部放电测量
- 华医网继续教育《医务人员职业素质修养与执业法律知识》考试题及答案
- 2022版义务教育(数学)课程标准(含2022年新增和修订部分)
- Hellp综合征专题知识
- 西亚、中亚、北非音乐课件
- 全国英语教师素养大赛大赛一等奖乌鸦喝水Unit-5-Story-Time课件
- 苏教版六年级科学(上册)第二单元遗传与变异单元测试卷(含答案)
- 中小学德育工作评价细则
- 教师招聘登记表
- 《现代商务礼仪》课程标准(中职)
评论
0/150
提交评论