第24卷第3期2010年6月
白城师范学院学报
Journal of Ba i cheng Nor m al Coll ege
Vo.l 24,No .3
J une ,2010
基于J SP 的网上书店的设计与实现
(白城师范学院计算机系,吉林白城137000)
摘要:本文采用面向对象的方法,设计实现了一个基于JSP 的小型电子商务网站即网上书店系统.该系统是基于B /S 三层数据库应用体系结构,实现的技术方案为JSP +To mcat+M y Sq,l 将图书、用户、购物车、订单等都封装成相应的类,同时,每个类又都有与其对应的操作类,从而提高了对数据库操作的安全性和
程序的可扩展性.网上书店由前台系统和后台管理系统组成,前台用户可以在网上进行注册、登录、书籍查询、浏览、图书订购、查看订单信息等操作;后台管理系统可以进行图书、用户、订单的管理.
关键词:网上书店;JSP ;Java ;JavaBean ;B /S 结构中图分类号:TP311.5
文献标识码:A
文章编号:16733118(2010)03004608
收稿日期作者简介马新(),女,白城师范学院计算机系副教授,硕士,从事计算机应用研究随着网络技术的成熟,网上书店作为电子商务的一种,于20世纪90年代后期开始兴起,现在已经具备了一定规模.网上书店是企业对消费者的电子商务的具体形式,它主要是企业通过在互联网上开设网上书店,消费者通过网络浏览图书信息,并在网上下单,在线支付的一种经营模式.这种经营模式方便快捷,基于java的图书管理系统
不受时间空间限制,24小时营业,因而受到消费者欢迎.现在全国各家大型书店逐步开始使用网络这一服务和交易手段,使传统的经营管理方式逐渐向网络经营管理方式转化.全国各地网上书店也呈不断上升趋势,展示了网上书店是未来图书经营管理的发展趋势.目前国内的网上书店系统大多是用ASP 来编写的,ASP 有它的局限性,它是解释运行的,在多个客户访问的情况下会变得非常慢,而且网站服务器的负荷也很重,且只能运行在微软的操作系统和服务器上.JSP 页面的内置脚本语言是基于Java 的,秉承
了Java 语言的优势,是一种实实在在与平台无关的开发技术,JSP 的编译操作仅在对页面第一次请求时发生,速度远远大于ASP ,安全机制和性能均大于AS P .Jav aBean 、Servlet 等J2EE 技术是JSP 强大生命力的所在,因此采用JSP 技术开发网上书店应该是未来发展的趋势.
1网上书店的总体规化
1.1网上书店系统的功能
随着电子商务的普及,网上购物的热潮此起彼伏.网上购物跨越了时空的限制,给商业流通领域带来了非同寻常的变革,网上购物的真正受益者是消费者.本文所设计的网上书店系统由前台系统和后台管理系统组成.
前台系统是面向用户的网页界面,用户可以在网上进行注册、登录、书籍查询、浏览、图书订购、查看订单信息等操作,前台系统还应包括一些其他辅助功能,如书店简介、最新新闻、网站公告等.
后台管理系统是网站所有者利用计算机对电子商务网站各种功能进行管理、控制的系统,主要实现图书、用户、订单的管理.1.2系统功能模块划分
系统功能模块图如图所示6
:2010-04-11:1970
.
1.
4
图1系统功能模块图
系统管理员实现网站后台管理的功能模块图如图2所示.
2数据库设计
数据库是信息系统的核心和基础,是信息系统开发和建设的重要组成部分.根据网上书店系统功能的要求以及功能模块的划分,针对一般网上书店的需求,数据库的功能主要体现在对各种信息的提供、保存、更新和查询操作上,包括用户信息、图书信息、订单信息,各个部分的数据内容又有内在联系,因此总结出如下的信息表.
(1)图书表,包括图书编号、图书名称、图书分类编号等,
(2)图书分类表,包括图书分类编号、图书分类名称,(3)管理员表,包括管理员名、管理员密码,(4)用户表,包括用户名、用户密码等,(5)订单表,包括订单编号、图书编号、订购数量,(6)订单明细表,包括订单编号、用户编号、下订单时间等.
3网上书店的详细设计与实现
本系统采用的技术方案为S +T +My Sq,即使用S 作为W 服务器端开发语言,采用T 作为W 服务器和S 引擎,采用My Sq 作为后台网络数据库管理系统3系统设计特点
基于JSP 的网上书店的设计与实现
J P o mcat l J P eb o m cat eb J P l ..147
图2后台管理功能模块
3.1.1页面模块化
本系统在界面设计上采用了模块化的思想,把很多页面共有部分单独集成一个模块,例如页面的头、尾等,在开发系统时,遇到这些相同的页面部分就不需要重复编写,而只要在相应位置上加上<%@i n c l ude file=
/boo k /i nc /head .j sp!%>即可,大大提高了开发效率.
3.1.2三层结构设计
本系统采用三层结构设计,即程序逻辑结构分为用户界面层、业务逻辑层和数据存储层.由于网上书店系统的功能较强,相应的代码设计比较复杂,JSP 网页文本也会变得庞大,需要大量的嵌入Java 代码和HT ML 语句,其中,Jav a 代码为逻辑代码,用来完成所需要的功能,嵌入Java 代码、HT ML 语句、Jav aScript 语句,使编写和维护JSP 网页变得很困难.使用Java Bean 可以很好地解决这一问题,将JSP 和Java Bean 结合起来,业务逻辑处理层采用Java Bean 实现,然后在JSP 网页中调用,而JS P 文本着重是网页界面设计,这会使JSP 网页变得清晰,可以节省软件开发时间,系统的安全性、可维护性、重用性和可扩展性都大大提高.3.1.3面向对象程序设计
在本系统中将图书、用户、订单等都封装成相应的类,同时每个类又都有与其对应的操作类,从而再次提高了对数据库操作的安全性和程序的可扩展性.3.1.4人性化设计
本系统导航清晰,操作方便、简单,不管用户位于本书店!的任何地方,都不会迷路3类的设计
在本系统中,一共设计了十三个类,各个类的名字、所在的包及作用如表所示白城师范学院学报第24卷第3期
..21.48
表1网上书店的类表
包名类名作用boo ksho p .bo ok
boo k 图书类boo kclass 图书分类类order 订单明细类a ll or der 订单类user 用户类shopcar
购物车类boo kshop .run
lo gi n 管理用户登录o p_bo ok 管理图书o p_boo kclass 管理图书分类o p_buy 管理订单o p_user
管理用户boo kshop .u til
DataBase 数据库连接dataFor mat
数据格式转换
3.2.1bo ok 包中类的设计
3.2.1.1boo k 类的设计
boo k 类是对图书实体的抽象,它包含了图书实体的所有属性及图书对象的初始化构造的方法.其部分定义如下:
pub lic class boo k {priv ate lo ng Id ;//I D 序列号priv ate String Bo ok Na me ;//书名priv ate i n t Bo ok Class ;//图书类别
//图书实体的其它属性pub lic bo ok(){I d =0;Boo k N a me =!;Boo kClass =0;
}
pub lic v oi d setId(lo ng ne wId){t h is .I d =ne wId ;}pub lic l ong getId(){ret urn I d ;}
pub lic v oi d set Boo k Na me(Stri ng ne wBoo k Na me){t h is .Boo k N a m e =ne wBoo k Na me ;}pu
b lic String get Boo k N a me()
{B N ;}
用同样方法设置和获得实体的其他属性值}
基于JSP 的网上书店的设计与实现
ret urn oo k a m e //.49
3.2.1.2sho pcar 类的定义
这个类是对购物车实体的抽象,它包含了购物车实体的所有属性及购物车对象的初始化构造方法.该类的数据视图如图3所示
:
图3
sho pcar 类数据视图
3.2.2run 包中类的设计3.2.2.1
o p_boo k 类的设计
由于图书实体的存在,需要对图书进行查询、添加等管理操作,为了使用上的方便,将这些方法封装到op-bo ok 类中.
该类的主要方法如下:boo k_search():完成图书查询
delete():负责图书删除insert():负责图书的添加update():负责图书的修改
get Request():负责把从页面接受到的表单资料分解,并设置图书实体的相应属性.3.2.2.2o p_buy 类的设计
该类主要实现订单和购物车管理.其主要方法如下:
addne w ():负责向购物车中添加图书.
mo d i Shoper():负责修改购物车中图书的购买数量.del Sho per():负责删除购物车中图书.
pay out():负责将订单信息写入数据库.delete():负责从数据库中删除指定I D 的订单.
get A llor der():负责从订单表中查询指定用户的订单列表.
update():当用户付款后,负责将对应订单的是否付款标记更新为已付款.3.2.2.3
o p_user 类的设计
该类主要实现用户管理.其主要方法如下:add():负责添加用户.
delete():负责删除指定I D 的用户.update():负责用户资料的修改.
_()负责取出书店的所有用户信息U f ()负责取得指定用户的详细信息[]
33前台用户页面设计5白城师范学院学报第24卷第3期
get alluser :.get seri n o :17.
.
0

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。