视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
网上购物系统毕业设计
2025-09-27 16:23:11 责编:小OO
文档
基于JSP的网上购物系统

 作者姓名:于海洋 专业班级:060401  指导老师:孙静波

摘 要

伴随着Internet的蓬勃发展,网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足用途信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。网络购物正适应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的商品。

本系统便是尝试用JSP在网络上架构一个动态的电子商务网站,它是在Windows XP下,以Oracle为数据库开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(Java Server Pages)技术开发的网上购物系统。他分前台部分和后台部分,前台部分由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理,留言板管理等功能;后台部分由管理员使用,主要包括商品管理,处理订单,用户信息管理,链接信息管理等功能。

建立后的网站系统是一个动态、交互式、具有商品提供、系统管理、用户留言等功能的电子商务网站。

关键字:JSP;Oracle10g;Tomcat;网上购物系统

Online Shopcart Based on JSP

Abstract:Along with the vigorous development of the Internet, e-commerce networks as a shopping center is a form of its highly efficient, low-cost advantages, gradually emerging as a business model and philosophy, there is no longer meet use and dissemination of information browsing, but a desire to bring the full enjoyment network more convenient. Internet shopping is being adapted to the fast pace of today's society to live, so that customers can enjoy the convenience of fast and easy way to purchase their own like commodities.   

The system is trying to use JSP in a dynamic network of e-commerce websites structure, which is in Windows XP, Oracle10g for database development in platform, Tomcat application server as a network information services, use JSP (Java Server Pages) technology development online shopping system. Prospects and the background of some of his hours, the prospects of users, including users registered, a shopping cart management, order management, personal information management, message board management functions; Background in part by managers, including commodity management, processing orders, customer information management, information management, and other functions links.   

After the establishment of the website is a dynamic, interactive, with commodities, systems management, voice mail, and other functions of the e-commerce website users. 

Keywords:JSP; Oracle10g;Tomcat;Online shopping system

目录

第1章 前言    1

1.1系统设计的背景    1

1.2系统设计的意义    1

第2章 系统概述    2

2.1 JSP的技术原理    2

2.1.1 JSP语言及其特点    2

2.1.2 Java及Java Servlets概述    3

2.1.3 JavaBean简介    4

2.2 相关服务器    4

2.2.1JDK的安装和配置    4

2.2.2 Tomcat安装及配置    5

第3章 系统需求分析及总体设计    8

3.1 需求分析    8

3.2 系统功能模块设计    9

3.3 数据库需求分析    9

第4章 数据库结构设计    11

4.1 数据库实现    11

4.1.1 product_ccut (商品信息表)    11

4.1.2 text_ccut(留言信息表)    11

4.1.3 user_ccut(用户注册信息表)    11

4.1.4 manager_ccut(管理员信息表)    12

4.1.5 order_ccut(订单生成表)    12

4.1.6 orderitem_ccut(订单商品表)    12

4.1.7 Affiche_ccut(公告信息表)    13

4.2 用JSP连接数据库    13

第5章 系统详细设计    15

5.1 前台部分    15

5.1.1 前台总体框架    15

5.1.2 用户管理模块    16

5.1.3 用户资料修改    18

5.1.4 购物车模块    18

5.1.5 订单查询模块    20

5.1.6 留言板模块    21

5.2 后台部分    22

5.2.1 后台总体框架    22

5.2.2 管理员登录    23

5.2.3 添加商品    23

5.2.4 订单信息管理    24

5.2.5 查询用户信息    24

5.2.6 添加链接    25

第6章 系统测试和维护    26

6.1 系统测试    26

6.2系统维护    27

结论    28

致谢    29

参考文献    30

第1章 前言

1.1系统设计的背景

计算机软件技术的日新月异推动了社会信息化的进程,这也使得开发人员不得不学习新的技术以适应这种局面。在web应用领域,动态网页技术作为web系统开发的核心,越来越受到业内人士的青睐。目前主流动态网页技术主要是指ASP、PHP、和JSP。

JSP(java server pages,java服务器页面)是SUN MicroSystems公司于1999年末在企业Java工具集中加入的一个新元素,它建立在Java Servlet之上。其设计目的是使开发人员,甚至非开发人员都能够高效率地创建Web内容。在过去几年里,使用JSP技术的开发人员飞速增加,它已经变成Web开发的主流技术之一。

用JSP开发的Web应用程序是跨平台的,它不但可以在Windows下运行,也能在Linux以及其他各种版本的UNIX操作系统上运行。这一点是ASP不具有的。JSP将网页的逻辑功能设计与界面分离,同时它支持可重用的基于组件的设计以及它的跨平台特性,使Web应用变得简单,因此它在问世不长时间就超过了ASP和PHP,为许多大型网站所采用。

1.2系统设计的意义

首先本系统是基于JSP技术的网上购物系统,能够有效地将产品管理系统和网上订购系统有效地结合在一起,通过网站实现企业的在线交易来销售自己的产品,进一步扩大市场份额。通过产品订购管理系统的网上交易,企业可以随时随地了解和掌握销售情况,实现产品销售统计分析同时又能有效地控制商场运营成本,开辟了一个新的销售渠道。

第2章 系统概述

2.1 JSP的技术原理

2.1.1 JSP语言及其特点

在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。JSP页面看上去象标准的HTML和XML页面,并附带有JSP引擎能够处理和抽取的额外元件。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给用户。

程序片段可以操作数据库、重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。

所有程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。

JSP技术在多个方面加速了动态Web页面的开发:

(1)将内容的生成和显示进行分离

使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的 逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。

(2)强调可重用的组件

绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享 

(3)采用标识简化页面开发

Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。

(4)JSP能提供所有Servlets功能

与Servlets相比,JSP能提供所有Servlets功能,它比用Println书写和修改HTML更方便。可以更明确地进行分工,Web页面设计人员编写HTML,只需留出空间让Servlets程序员插入动态部分即可。JSP技术能够支持高度复杂的基于Web的应用。

(5)健壮的存储管理和安全性

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。

(6)一次编写,各处运行

作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。

2.1.2 Java及Java Servlets概述

JSP技术是用JAVA语言作为脚本语言的,谈及JSP技术,少不了要对JAVA技术进行一些基本的介绍。

Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。

   Servlet是一种于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。 它担当Web浏览器或其他HTTP客户程序发出请求,与HTTP服务器上的数据库或应用程序之间的中间层。

Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。

2.1.3 JavaBean简介

JavaBean是一种基于Java的软件组件,JavaBean和Active控件一样,可以通过封装业务逻辑建立一整套可重复利用的对象库。JSP对于在Web应用中集成JavaBean组件提供了完善的支持,这种支持不仅能缩短开发时间(可以直接利用经过测试和可信任的已有组件),避免重复开发,也为JSP应用带来了更多的可伸缩性。JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互及数据提取等。

由于Java语言在这些方面所具有的特点和优势,使得基于它的软件JavaBean组件技术倍受人们关注。它的任务就是:一次编写,可以在任何地方执行,可以在任何地方重用。JavaBean组件可以在任何地方重用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。

为了创建和使用Java软件组件,JavaBean被实现为一种于平台和结构的应用程序接口,它的实现可以忽略内部的结构和细节问题,只需定义其外部的特征及对外功能就行。其中,属性、方法和事件三种接口可以对外进行开发。

2.2 相关服务器

2.2.1JDK的安装和配置

从官方网站http://java.sun.com下载该JDK后,进行默认安装,并进行相关的环境配置。 

安装和配置完毕后,在“命令提示符”中输入javac,会出现如图2-1所示,则说明JDK安装和配置都是正确的。

     

图2-1  javac调试界面

2.2.2 Tomcat安装及配置

直接运行下载的apache-tomcat-5.5.17.exe文件,按照一般的Windows程序安装步骤即可安装好Tomcat,安装时它会自动寻找JDK的位置。安装过程中需要选择一个文件夹作为Tomcat的安装目录。

安装完成以后,添加一个Tomcat的环境变量,添加方法和JDK的环境变量的添加方法相同。 

有一点需要注意的是由于Oracle的服务器启动后会占用8080端口,而tomcat服务器用的也是8080端口,所以需要更改tomcat的端口号,方法如下:到tomcat安装到的目录下找到conf文件夹,在里面找到context.xml,用记事本打开后找到不是在下面的8080,把它改为其他端口即可,本项目改为;

设置完毕后就可以运行Tomcat服务器了。Tomcat成功启动后,在浏览器中输入http://localhost:,如果出现欢迎界面,则说明Tomcat安装成功。欢迎界面如图2-2所示。

图2-2  Tomcat欢迎界面

第3章 系统需求分析及总体设计

3.1 需求分析

作为一个网上购物系统.首先为了保证客户能够很方便的进行商品的选择,系统应该具有分类选择商品,查看热门商品,查看最高销量产品等功能,系统应该实现“购物车”的功能,用户可以把选中的商品放入“购物车”中,在选购完毕后再到“收银台”一起结账。同时,为了及时宣传商家的各种优惠举措,系统还应该在首页显示购物网站最新的促销消息。在系统的后台,管理员能够管理商品,商品分类,新闻,新闻类别以及客户购买订单。为了更好进行服务,系统还应该支持用户投诉功能.因此可分析出网络商城主要功能包括:

(1)前台部分由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理,留言板管理

(2)后台部分由管理员使用,主要包括管理员身份验证,商品管理,处理订单,用户信息管理,连接信息管理

设计的目标是实现一个功能较为强大的网络商城系统,该系统能够实现用户的注册,简便的商品寻找和查看,购物篮式的商品选购,收银台统一结算,用户订单投诉等功能,在系统的后台,管理员可以处理用户订单并配送获取,并可以对商品信息,商品类别,新闻,新闻类别,用户投诉等实现集中管理。

网络商城主要实现如下目标:

(1) 采用最新技术架构:B/S(浏览器/服务器)架构,实现真正的业务集中管理,零系统维护。

(2) 人性化的设计:程序设计充分考虑使用方便,界面友好。

(3) 信息发布,方式多样。

(4)实现商品分类查询以及销售排行。

(5) 为会员提供综合性,规范化服务。

(6) 会员可随时查询自己的会员资料和修改个人信息。

(7)用户的订单规范化管理。

3.2 系统功能模块设计

系统功能结构图如图3-1所示。

图3-1  功能模块设计图

从图中可以看出,网上购物系统可以分为前台和后台两个部分,前台部分由用户使用,主要包括用户注册,生成订单,购物车管理,查看购物车,查看留言,订购产品,订单查询和发布留言7个模块;后台部分由管理员使用,主要包括管理员身份验证,商品管理,处理订单,用户信息管理,连接信息管理5个模块。

3.3 数据库需求分析

    数据库的设计通常是以一个已经存在的数据库管理系统为基础的,常用的数据库管理系统有MYSQL,SQL Server, Oracle等。我采用了Oracle10g数据库管理系统,建立一个用户名和密码都是ccut得用户。

整个系统功能需要以下数据项:

用户:用户名称、登录密码、用户真实姓名、性别、邮箱地址、联系地址、联系电话、注册时间。

留言:主题id、作者姓名、Email、主题名称、留言内容、发布时间。

商品:商品id、名称、价格、图片路径、类型、简要介绍、存储地址、上传人姓名、发布时间、是否推荐。

订单:订单号、用户名、订单日期、订单状态,总价。

订单项:订单项号,订单号,商品号,数量。

管理员:管理员id、管理员名称、管理员密码。

公告:公告内容、公告时间。

第4章 数据库结构设计

4.1 数据库实现

4.1.1 product_ccut (商品信息表)

主要用于保存商品的基本信息,该表的结构如表4-1所示

表4-1  product_ccut (商品信息表)

列  名

说  明

类 型 ( 长 度 )

备  注

Productid物品id

Number (6)

不允许空,主键

productname

物品名称Varchar 2(70)

不允许空
price物品价格number (10,2)

不允许空
type物品类型Varchar 2(20)

不允许空
intro物品介绍clob不允许空
image图片路径Varchar2 (30)

不允许空
4.1.2 text_ccut(留言信息表)

主要用于记录留言信息,该表的结构如表4-2所示。

表4-2 text_ccut (留言信息表)

字  段

说  明

类型(长度)

备注
Textid主题id

number(6)

不允许空,主键

Username作者姓名Varchar2(20)

不允许空
EmailEmailVarchar2(50)

不允许空
Dattime发布时间Date(8)

不允许空
Textname主题名称Varchar2(50)

不允许空
Textgut留言内容clob不允许空
4.1.3 user_ccut(用户注册信息表)

表4-3  user_ccut (留言信息表)

字  段

说  明

类型(长度)

备注
Username用户名Varchar2(20)

主键,不允许空

EmailEmailVarchar2(50)

不允许空
password密码Varchar2(50)

不允许空

sex性别Varchar2(2)

name真实姓名Varchar2(20)

Phone联系电话Varchar2(12)

4.1.4 manager_ccut(管理员信息表)

主要用于保存管理员信息,该表的结构如表4-4所示。

表4-4  manager_ccut(管理员信息表)

字  段

说  明

类 型 ( 长 度 )

备  注

Id管理员id

Int(4)

不允许空
Admin管理员名称Varchar(30)

不允许空
Adminpass管理员密码Varchar(16)

不允许空
4.1.5 order_ccut(订单生成表)

主要用于保存会员订单信息,该表的结构如表4-5所示。

表4-5  oder_ccut(订单生成表)

字  段

说  明

类型(长度)

备注
orderid订单id

Varchar(50)

不允许空,主键

username   用户名Varchar(50)  

不允许空
totalPrice商品总价Number(10,2)

不允许空
orderDate订单日期Date不允许空
State订单状态Varchar2(20)

4.1.6 orderitem_ccut(订单项表)

主要用于记录某一订单表中所订购的商品的详细信息,该表的结构如表4-6所示。

表4-6  orderitem_ccut (订单商品表)

字  段

说  明

类型(长度)

备注
orderitemid订单项id

Number(6)

不允许空,主键

Orderid订单id

Number(6)

不允许空,外键

Productid商品id

Number(6)

不允许空,外键

Qty商品数量

Number(5)

不允许空
4.1.7 Affiche_ccut(公告信息表)

主要用于记录后台添加的公告信息,该表的结构如表4-8所示。

表4-8  Affiche_ccut(公告信息表)

字  段

说  明

类型(长度)

备注
Test公告内容Test(16)

不允许空
Dattime公告时间Dattime(8)

不允许空
4.2 用JSP连接数据库

在本系统中,需要多次连接数据库,而且这种连接是一项很消耗资源的操作,因此,在本系统中使用tomcat的链接池并且对数据库连接的部分写成了一个JavaBean以方便前期的测试工作。

第5章 系统详细设计

5.1 前台部分

前台部分由用户使用,包括用户注册,购物车管理,订单管理,个人资料管理等几个部分。

5.1.1 前台总体框架

 (1)模块功能介绍

用户管理:为了便于网站的管理,必须有一套完整的用户管理体系。该网站用户管理模块由用户注册,用户登陆,找回密码3部分组成。

订单查询:登陆用户可以通过订单号查询订单。

购物车:所选商品须通过购物车进行保存,然后生成订单。

修改个人资料:为了保护用户信息不受非法侵害,用户登陆后即可对个人的注册信息进行修改。

留言板:用户可以查看和添加留言信息。

(2)前台文件构架

本网上购物网站的前台文件结构如图5-1所示。

图5-1  前台文件结构图

 

(3)网站前台首页的运行结果如图5-2所示。

图5-2  购物网站首页

5.1.2 用户管理模块

用户管理模块主要包括用户注册,登录及找回密码3个部分.

(1)用户注册

当用户第一次登录时首先要注册,成为会员后,才可以购买物品.用户可以通过单击首页的注册按键来打开注册页面进行会员注册操作,用户注册页面的运行结果如图5-3所示.

图5-3  用户注册页面

为了便于管理网站对用户的管理,在index.htm  用户注册页接收到的注册信息要经过严格的过滤,保证注册用户的唯一性,在提交表单后需要对数据表中的数据进行查询,如果没有找到,则在插入数据表时提示注册成功,否则提示用户以被占用,请重新注册,关键代码如下:

String uid=request.getParameter("uid");  

用户登录窗口设置在首页上,主要用来接收用户输入的用户名和密码,并更新用户在网站中的状态信息. 会员登录窗口的运行结果如图5-4所示。

图5-4  会员登录窗口

网站首页在用户第一次访问时会判断用户是否登录,未登录则显示用户登录窗口,提示用户登录或注册.对于已经登录的用户,在用户登录窗口将显示用户的相关信息.

首页主要是根据保存用户名信息的Session参数来判断用户是否已经登录的,关键代码如下:

        String name=(String)session.getAttribute("name");

在会员登录窗口中单击登录按纽后,系统将对用户名和密码进行验证,判断用户是否是已注册用户,如果已注册,则更新用户在网站中的状态,如果没 有注册,则拒绝用户的登录操作,登录数据验证的程序代码如下:

    JDBConnection con=new JDBConnection();

    where Username='"+username+"' and Userpass='"+password+"'";

    ResultSet rs=con.executeQuery(sql);   if(rs.next()){

        session.setAttribute("username",username);

        session.setAttribute("password",password);       }

5.1.3 用户资料修改

用户资料修改在前台主页上,单击“修改资料”链接,进入用户修改资料页面,该页面主要用于修改用户信息,其运行结果如图5-6所示。

图5-6 修改用户信息

个人资料修改完毕后,要将修改后的数据信息更新注册到数据表中,单击“修改”按钮,如果提交的数据无误,将弹出“数据更新成功”消息对话框:否则将弹出“更新失败”的消息对话框。结果展示页面的关键代码如下:

if(session.getAttribute("username")==null){if(rs.next()){   ……  } }

5.1.4 购物车模块

在超市购物,可以根据自己的需要将很多的物品挑选到购物车(篮)中。而在网上虚拟的购物商城中,通常都会采用一种被称做“购物车”的技术来模拟现实生活。这种技术用起来十分方便,不但可以随时添加,查看,修改,清空购物车中的内容,还可以随时去收银台结帐。

(1)添加购物车

添加购物车就是把用户选中的商品放在购物车中。当用户在前台首页中单击商品展示区的“购买”按钮时,系统会将该商品的详细信息展示在查看物品清单页中,运行结果如下图5-7所示。

图5-7  查看物品清单页面运行结果

用户在单击物品清单页面下方的“放入购物车”链接,便可将商品放入购物车,关键代码如下:

Str chr=new Str();    if(session.getAttribute("username")==null){  ……  }

(2)查看购物车

为了方便用户随时查看购物情况,在网站的首页加入了查看购物车链接,通过它可以将所选物品信息放入购物车中显示出来。查看购物车页面运行结果如下图5-8所示。

图5-8  购物车在网页中运行结果

在程序中笔者使用一组文本框记录用户购买的商品数量,用户可以在文本框中输入想要购买的数量然后单击修改按钮。如果要删除物品,可以在数量文本框里输入“0”,并单击修改按钮来更新购物车中商品的数量。

(3)生成订单

生成订单是网上购物商城的最终目的,前面的所有的功能的实现都是为最后生成一个用户满意的订单做基础,在此要生成一个可以供用户随时查询订单号,还要保存用户订单中所购买的商品信息。当用户确认对购物车不再改变后,就可以到收银台结帐并生成订单。结帐的流程是:从购物车中读取商品名称,商品数量,商品价格信息,生成唯一的一个订单号,同时也把用户注册的基本信息读取出来,形成一个完整的订单写入数据库中,结帐填写订单的页面如下图5-9所示。

图5-9  购物车在网页中运行结果

在生成订单模块中主要使用了调出用户信息并生成唯一订单号,调出用户信息就是完全的对数据库进行操作,利用session 对象把登陆后的用户名保存起来,在订单生成时把保存的用户名从数据库的用户表中取出即可。以下代码段sub/index.jsp 是关键代码:

String buy=request.getParameter("buy"); 

if(buy!=null&&buy.equals("查看")){

response.sendRedirect("look.jsp"); }

else if(buy!=null&&buy.equals("购买")){

response.sendRedirect("order.jsp"); }

 (4)清空购物车

清空购物车是指当用户订单生成后,倘若还想继续购物,一定要清空购物车在进行选购商品,这样防止重复购物。清空购物车只需要将session 中存储的shop 对象清空即可。此功能是由user/putin.jsp 完成的,关键代码如下:

Vector newshop=new Vector();    session.removeAttribute("shop");

5.1.5 订单查询模块

用户提交订单后,通常产生的订单号查询信息及执行状态。用户在网站首页中单击“订单查询”超链接,进入输入订单号页面,运行结果如图5-10所示。

图5-10 订单号页面

在文本框中输入订单号并单击提交的按钮,如果订单号输入无误,系统将根据定单号转到订单查询显示页面,运行结果如下图5-11所示。

图5-11 订单查询页面

该方法实现非常简单,只需要根据用户录入的订单号在数据表中查询出对应的货品信息即可,关键代码如下:

    int spif=0;     String subid=request.getParameter("subid");

    String sql="select * from tb_Shop where Subid='"+subid+"'";

sum=sum+price;  if(!rs.next()){   ……   }

5.1.6 留言板模块

留言板是一个商务网站中不可少的一部分,他可以增进用户与网站之间的交流。添加留言是用户与用户,以及用户与网站之间的一种交流模式,只有把用户想要表达的内容添加到数据库中,才能在浏览留言板中显示。

用户在留言板中单击“添加留言”超链接就可以打开添加留言页面,该页面用来提交用户输入的留言信息,留言信息写好后,可以点击提交按钮,显示提交成功,若点击浏览留言,可打开留言板页面,该页面显示所有用户的留言,时间最近的排在最前面。

运行结果如图5-12所示。

图5-12 留言板页面

用户在添加留言页中单击提交按钮,系统将数据表提交到admin/addlea.jsp 页,该页用来实现将留言内容存入数据库中,关键代码如下:

    String username=request.getParameter("username");

    int temp=con.executeUpdate(sql);

5.2 后台部分

5.2.1 后台总体框架

后台功能只允许具有管理员权限的用户使用,它是实现前台功能的基础。主要包括管理员身份验证,订单信息管理模块,添加商品模块,查询用户信息管理模块,添加链接模块,公告信息管理模块组成

后台功能介绍

(1)功能模块介绍 

管理员身份验证:为合法用户提供一个后台入口。

    订单信息管理模块:网站管理者对用户订单的执行和编辑状态。

        添加商品模块:向商品表插入前台首页展示的商品信息。

查询用户信息管理模块:查询注册所有用户,对一些非法或失信用户进行删除操作。

添加链接模块:管理员向前台首页添加友情链接信息。

公告信息管理模块:网站向用户发送最新公告信息。

(2)后台文件结构

网站后台文件结构,如图5-13所示。

    

图5-13  后台文件结构图

(3)后台首页运行结果

网站后台首页运行结果,如图5-14所示。

图5-14  后台首页图

5.2.2 管理员登录

在前台首页单击管理员入口,将转到管理员登录页面。该页面的功能是对管理员身份验证,用户输入用户名和密码后单击“登录”按键,系统将判断用户名和密码的有效性,如果通过验证则转到后台首页,反之则提示错误。管理员登录页面的运行结果如图5-15所示。

图5-15 管理员图

在管理员登录页面中,对管理员的身份进行验证,关键代码如下:

String login=request.getParameter("login"); response.sendRedirect("index.htm");

5.2.3 添加商品

单击导航区的“添加商品”超链接,系统将打开添加商品页面,该页面主要用于商品信息添加到数据库表中,以提供前台首页商品展示类别展示所需要的数据依据。目录添加页面的运行结果如图5-16所示。

   图5-16添加商品页面

为了确保信息在数据表中的唯一性,在用户提交表单时,需要先根据用户输入的商品名称对数据表进行查询,确保此商品在数据表中不存在后,方可进行添加操作。在程序中与此功能对应的页为admin/gcheck.jsp ,关键代码如下:

Date date=new Date();  

e="+goodsname+"; ResultSet rs=con.executeQuery(sql);

5.2.4 订单信息管理

用户在前台购物所产生的订单不能立即执行需要系统管理员在后台订单,运行结果如图5-17所示。信息管理审核确认它执行性。用户单击导航拦中的“订单信息管理”超链接进入用户订单处理页面,该页面是会显示进期所没有被处理的订单,其运行结果如图5-17所示:

图5-17 用户订单处理界面

用户订单处理页面显示的是用户的基本信息。要知道订单中所涉及的商品,需要单击对应的订单号的超链接打开商品订购祥单页才行。商品订购祥单的运行结果如图5-18所示。

图5-18  商品详细订购界面

商品订购祥单主要通过提交的订单号从tb-shop表中查询出对应的商品显示在页面中,管理员审核后可通过复选框来设置订单是否执。

当选中“是/否”复选框时,系统会根据提交的订单号更新数据表。如果没有更新成功,将转到spif.jsp页执行。关键代码如下:

显示全文
专题