JSP网上购书课程设计报告.docx
《JSP网上购书课程设计报告.docx》由会员分享,可在线阅读,更多相关《JSP网上购书课程设计报告.docx(17页珍藏版)》请在冰豆网上搜索。
JSP网上购书课程设计报告
前言
目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。
网络的诞生和发展颠覆了传统的信息传播方式。
电子商务将成为21世纪网络发展的主流。
国内企业在纷纷建立企业宣传网络的同时,也逐步扩大企业自身的网络销售渠道,建立自己的电子商务网站,大大提高了企业网络交易的数量和金额。
网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给社会各行各业的发展注入新鲜的活力。
站在网络时代的前夜,我们清晰地听到了网络时代的宣言:
谁掌握了网络,谁就掌握了未来。
而本次课程设计的任务是,构建一个网上书店,充分利用了JSP技术开发了网上购书系统。
该系统基于Internet技术,有效地综合了计算机技术、数据库技术、网络通讯技术等多科前沿技术,是Web技术和信息技术向结合的实例。
JSP是由Sun公司在Java语言上开发出来的一种动态网页制作技术。
它提供了一种建立动态网页的简单方法,并为开发人员提供了一种Server端框架。
它代表了面向对象的软件开发技术的发展方向,具有巨大的应用前景。
本文档的安排如下:
第一章主要介绍了网上购书系统的概述和面向对象开发环境MyEclipse概述及MyEclipse编程环境。
第二章主要介绍说明了网上购书的总体设计并画出系统的总体设计流程图。
第三章主要介绍说明了网上购书系统的详细设计及数据库逻辑结构设计。
第四章主要介绍了系统的测试界面。
程序在设计的过程中遇到的问题已及时更正,但由于个人的能力和水平有限,人事信息管理系统和文档中不免会出现一些不期待的错误,望文档读者能够理解和体谅,并欢迎提醒和纠正,在此表示感谢以及敬意。
1网上购书系统概述
系统开发背景
网上购物的发展
近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。
于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。
网上购物系统作为B2B,B2C(BusinesstoCustomer,即企业对消费者),C2C(CustomertoCustomer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。
本文主要考虑的是如何建设B2C的网上购物系统。
网上购物系统实现的现状
JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。
由于PHP本身存在的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商务站点。
ASP和JSP则没有以上缺陷,ASP可以通过MicrosoftWindowed的COM/DCOM获得ActiveX规模支持,通过DCOM和TranscationServer获得结构支持;JSP可以获得SUNJava的JavaClass和EJB获得规模支持,通过EJB/CORAB以及众多厂商的TranscationServer获得结构支持。
三者中,JSP应该是未来发展的趋势,世界上一些大的电子商务解决方案提供商都采用JSP/Servlet。
JSP概述
尽管JSP提供强大的功能是建立在Servlet之上,但JSP的性能和Servlet相差无几。
JSP首先要编译成Servlet,这只会增加少量的代码,仅需编译一次且可以预编译,这就消除了运行时花费不必要的负担。
JSP与Servlet性能上的差异仅仅表现在返回的数据是二进制的。
这是因为JSP返回时用的是PrintWriter,而Servlet可以应用于速度更快的OutputStream。
JSP自定义的标签库可以封装大量的、复杂的Java操作在一个Form里面,这些预先定义好的标签可以很容易的被那些没有Java知识的人调用。
因此,JSP自定义的标签库可以有效地实现Java程序员和Web设计人员工作的划分。
然而,在页面上应用的每一个标签,Web容器都必须创建一个新的标签句柄对象或从标签缓冲中提取它。
因此,过多的应用自定义的标签将会带来不必要的资源浪费。
随着计算机技术的发展,网络技术对我们生活和工作显得月来越重要,特别是现在信息高度发达的今天,人们对最新信息的需求和发布迫切的需要及时性。
而动态交互式网页刚好提供了这些功能,本系统就是一个能够在网上实现新闻的网上多用户发布,多栏目管理,实时的进行行为统计和记录的网上交互系统。
HTML作为一种样式语言,随着Internet上信息量的增多和交互性的加强使HTML显得越来越难以胜任的情况之下,在JSP编程语言高度发展的形式下,我们开始了对网上购书系统的开发。
MyEclipse开发环境
图1-1MyEclipse开发环境
2网上购书系统总体设计
总体设计思想
系统整体采用JSP+Access+Tomcat技术实现。
此系统分为前台管理和后台管理。
前台管理是友好的操作界面,供用户浏览、查询使用。
包括:
浏览图书、查询图书、订购图书、购物车、用户维护等功能;后台管理是提供给管理员的,其中包括:
图书管理、用户管理等,是管理员从繁琐的手工操作中解脱出来,并提高了办公效率。
总体设计流程图
3系统的详细设计
WEB技术
Web服务器技术
Web服务器主要的作用是提供Internet上的Web服务。
只有架设了Web服务器,申请了IP地址以及域名,并且连接到Internet,才能提供Web服务,其他用户才能通过Internet访问该服务器上的Web页。
Web数据库访问技术
电子商务是以Web网络和数据库技术为支撑的,其中Web数据库技术是电子商务的核心技术。
Web数据库,就是能将数据库技术与Web技术很好的融合在一起,使数据库系统成为Web的重要有机组成部分的数据库。
它能够实现数据库技术与网络技术的无缝有机结合。
Web数据库管理系统基于Web模式的DBMS信息服务,充分发挥DBMS高效的数据存储和管理能力,以这种Web浏览器/服务器为平台,将客户端荣辱统一的Web浏览器,为Internet用户提供使用简便,内容丰富的服务。
Tomcat配置
1.安装j2sdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的jdk安装在c:
\jdk1.6):
path=c:
\jdk1.6\bin;
2.接着可以启动tomcat,在IE中访问http:
//localhost:
8080,如果看到tomcat的欢迎页面图1说明安装成功了。
若用tomcat5.5则进行classpath设置:
setclasspath=D:
\Tomcat5.5\common\lib\servlet-api.jar;.
图3-1Tomcat运行成功界面
数据库设计
一个合理的数据库模型,不仅会降低客户端和服务器端的编程和维护的难度,而且会增强系统实际运行的性能。
要注意索引的使用和保持数据的一致性与完整性。
数据库表结构
通过对网上书店工作过程的内容和数据流图分析,设计如下面的数据项和数据结构。
1、管理员信息,包括数据项有:
管理员编号、管理员账号、管理员密码。
2、会员信息,包括数据项有:
会员账号、会员密码、会员昵称、会员E-mail、会员级别(管理员设定)。
3、图书信息,包括数据项有:
图书编号、图书名称、作者、出版社编号、出版日期、图书类别编号、图书简介、图书推荐度(会员投票)、图书评价(会员编写)。
(1)出版社信息,包括数据项有:
出版社编号、出版社名称。
(2)图书类别信息,包括数据项有:
图书类别编号、图书类别名称。
4、图书订单,包括数据项有:
会员账号、下定日期、收货地址、收货地址邮编、收货人姓名、收货人联系方式、送货方式编号、支付方式编号、运输费用、总费用、图书名称、现存货情况。
(1)支付方式,包括数据项有:
支付方式编号、支付方式名称。
(2)送货方式,包括数据项有:
送货方式编号、送货方式名称。
5、购物车,包括数据项有:
会员账号、每种图书名称、每种图书市场价格、每种图书网站价格、每种图书数量、每种图书的总价、图书总价。
创建数据初表
1.系统管理员表
表3—1tb_Admin表
字段名
数据类型
长度
允许为空
主键否
默认值
描述
AdminID
bigint
8
否
主键自增
管理员编号
Admin
varchar
50
是
否
管理员姓名
Password
varchar
50
是
否
管理员密码
2.书籍信息表
表3—2tb_GoodsInfo表
字段名
数据类型
长度
允许为空
主键否
默认值
描述
BookID
bigint
8
否
主键自增
书籍ID
ClassID
bigint
8
是
外键
书籍类别ID
BookName
varchar
50
是
否
书籍名
BookIntroduce
ntext
16
是
否
书籍简介
Bookactor
varchar
50
是
否
书籍作者
Bookpublication
varchar
10
是
否
书籍出版社
BookNum
float
8
是
否
书籍的数量
BookUrl
varchar
50
是
否
书籍的图像
MarketPrice
float
8
是
否
市场价格
MemberPrice
float
8
是
否
会员价格
AddDate
datetime
8
是
否
出版日期
IsDiscount
bit
1
是
否
0
是否是特价书籍
3.用户信息表
表3—3tb_Member表
字段名
数据类型
长度
允许为空
主键否
默认值
描述
MemberID
bigint
8
否
主键自增
会员ID
Name
varchar
50
是
否
会员名
Sex
bit
1
是
否
会员性别(0代表女,1代表男)
Password
varchar
50
是
否
会员密码
TrueName
varchar
50
是
否
会员真实姓名
Phonecode
varchar
20
是
否
会员电话号码
Emails
varchar
50
是
否
会员E-Mail
City
varchar
50
是
否
会员所在城市
Address
varchar
200
是
否
会员住址
PostCode
char
10
是
否
住址邮编
AdvancePayment
float
8
是
否
会员充值
LoadDate
datetime
8
是
否
会员登录日期
4.购买书籍信息表
表3—4tb_BuyInfo表
字段名
数据类型
长度
允许为空
主键否
默认值
描述
BuyID
bigint
8
否
主键自增
购买书籍信息ID
BooksID
bigint
8
是
否
购买书籍的编号
Num
int
4
是
否
购买书籍的数量
OrderID
bigint
8
是
外键
订单的编号
SumPrice
float
8
是
否
总价
MemberID
bigint
8
是
否
会员编号
5.订单信息表
表4—5tb_OrderInfo表
字段名
数据类型
长度
允许为空
主键否
默认值
描述
OrderID
bigint
8
否
主键自增
订单ID
OrderDate
datetime
8
是
否
getdate()
下订单时间
BookFee
float
8
是
否
书籍总金额
TotalPrice
float
8
是
否
运费总费用
ShipFee
float
8
是
否
合计总金额
ShipType
int
4
是
否
配送方式类型
PayType
int
4
是
否
支付方式类型
MemberID
bigint
8
是
外键
会员编号
ReceiverName
varchar
50
是
否
收货人姓名
ReceiverPhone
varchar
50
是
否
收货人联系电话
IsConfirm
bit
1
是
否
0
是否已确认
IsPayment
bit
1
是
否
0
是否已付款
IsConsignment
bit
1
是
否
0
是否已发货
IsPigeonhole
bit
1
是
否
0
是否已归档
ReceiverPostCode
char
10
是
否
收货人的邮编
ReceiverAddress
varchar
200
是
否
收货人的地址
ReceiverEmails
varchar
50
是
否
收货人的邮箱
4系统设计界面
登录界面
图4-1图书系统登陆界面
登陆界面的设计代码:
登录界面
姓名:
密 码:
主界面
图4-2图书系统主菜单界面
主菜单界面:
返回
图书系统
添加新书
图书查询
actionId=view">显示所有新书
添加图书界面
在“图书系统”界面点击“添加新书”链接到“添加新书”界面,在文本框中输入书籍的相关信息,点击“提交”,书籍的信息存入数据库,并显示“插入成功”信息,显示界面如下:
图4-3添加图书界面
功能实现的主要代码:
新书类型
新书题目 |
| 新书概要 | 出版时间
| |
|
查询界面
在“添加新书”界面点击“返回”链接到“图书系统”界面,点击“图书查询”链接到“按照新书名称查询”界面,在文本框中输入要查询的书名,如“1”,显示界面如下:
图4-4图书查询界面
实现功能代码如下:
返回
按照新书名称查询
更新界面
在显示所有图书界面中有操作“删除”,“更新”两个功能,点击“更新”,进入“资料更新界面”,图如下:
图4-5图书更新界面
修改完以后,点击“更新”按钮,数据会自动的更新数据库,点击“返回”操作,
在这个页面中,你可以修改全部也可以修改在其中的一项或几项修改完以后,点击“更新”按钮,数据会自动的更新数据库。
也可以按“重置”按钮,是对文本内容的清除,方便再次填写。
图书名 | "> |
图书概要 | type="text"id="qty"><%=productInfo.getQty()%>
删除界面 在显示所有图书信息图中,点击“删除”按钮操作,数据会删除掉,效果如下图所示: 具体代码有后台实现: 图4-6图书删除信息界面 5课程设计总结 为了提高我们的实践能力,让我们学以致用,能灵活运用所学的知识进行再创造,学校特安排我们进行为期两周的JSP课程设计实践,并安排了指导老师帮助辅导,让我们在规范化、严谨化、实用化上面有了很大进展。 在此次网上购书系统开发过程中,有很多东西值得我思考并总结。 开发过程大体可分为以下几个步骤: (1)思考总体设计方案: 总体结构和模块外部设计,功能分配。 思考要实现整个程序大体需要的几个模块和其中用到的JSP语言基本操作符、语句等。 (2)画出总体设计方案流程图: 用流程图的形式展现我的基本编程思想。 (3)流程图具体化: 即将流程图中的几大模块的具体实现思考清楚,可以用流程图的形式展现.并想好实现的关键代码。 (4)编辑程序代码: 这是一个至关重要复杂而且需要反复修改的环节,在此环节中你将发现总体设计和模块思想会存在很多问题,需不断改进.如何实现各函数功能,达到预期效果也将是一项繁复的工作。 (5)代码的调试: 在MyEclipse环境下输入代码并进行调试和正确运行。 在调试过程中会遇到很多需要精化的地方,需要十足的耐心与细心,不断改进、完善程序。 (6)最后修饰: 程序可以正确运行之后,在不影响程序功能的情况下,运用各种辅助性符号,使界面更加美观漂亮,操作更人性化,增强程序的新意与可行性。 通过这次课程设计当中认我认识到开发一项好的软件不是某一个人就能完成的任务。 一个团队的小组,一个勤奋的小组非常重要,沟通是解决问题的就好办法。 俗话也得好: “不怕虎一样的敌人,就怕猪一样的队伍”。 所以小组中的每个成员的能力与协作能力也是致关重要的。 同时,不仅是团队内部的交流,更多需要协调好团队之间的交流。 通过这次课程设计,使我可以更加熟练地应用MyEclipse这个开发环境。 更加熟悉掌握了MyEclipse这门建模语言的基本功能,对各个函数以及结构的应用有了更深层次的理解,大大地提高的我的动手实践能力,切实地学到了很多解决实际问题的能力.同时也使我对自己更有自信,对建模也更有兴趣。 我相信,只要努力、勤奋、坚持不懈,就没有什么做不到的事,不能还没开始就退缩,要勇于拼搏,敢于创新。 6参考文献 [1]蔡红柳,何新华.信息安全技术及应用实验.北京: 科学出版社,2004 [2]郑人杰,殷人昆,陶永雷.实用软件工程.北京: 清华大学出版社,1997.4 [3]张敏,徐振谭,冯登国.数据库安全.北京: 科学出版社,2005. [4]王元珍,冯超.数据库加密系统的研究与实现.计算机工程与应用,2005.6 [5]蔡红柳,何新华.信息安全技术及应用实验.北京: 科学出版社,2004. [6]卿斯汉,冯登国.信息系统的安全.北京: 科学出版社,2003. [7]朱良根,雷振甲,张玉清.数据库安全技术研究.计
展开阅读全文
相关搜索
| |