网上书店庄勇.docx
- 文档编号:11951771
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:17
- 大小:228.31KB
网上书店庄勇.docx
《网上书店庄勇.docx》由会员分享,可在线阅读,更多相关《网上书店庄勇.docx(17页珍藏版)》请在冰豆网上搜索。
网上书店庄勇
网上书店——庄勇
网上书店管理系统
学生姓名:
庄勇指导老师:
肖增良
摘要:
21世纪是网络的时代、信息的时代,时间是非常宝贵的,人们由于种种原因没有时间到书店去,也不知道哪家书店有自己需要的书籍,同时那些传统书店的经营者又没什么好的方法让人们知道我这就有顾客需要的书籍,这种买卖双方之间信息交流上的阻碍成为“网上书店”网站发展的原动力。
网上书店网站的建立可以更好的解决这方面的问题,我们向广大用户推出的是一种全新的网上信息服务,旨在书店与消费者之间架起了一座高速、便捷的网上信息桥梁,我们的目的是节省您的时间、方便您的购书,使您永远走在时代的前沿。
关键词:
数据库;SQL
1引言
1.1课程背景
随着全球经济一体化的逐步发展和深入,网上书店已成为传统书店必不可少的经营策略之一.目前,网上书店在国际互联网上可以实现的商务已经多样化,可以完成从最基本的信息展示、信息发布功能到在线交易、在线客户服务、在线网站管理功能等,可以说,传统书店所具备的功能几乎都可以在互联网上进行电子化的高效动作。
虽然传统书店规模有所不同,随着网上交易的开展,都将有力地改变企业的发展空间,会对企业的竞争力产生不可忽视的影响
1.2课程目的
开发一套网上书店购书系统,可以让顾客通过浏览器浏览网站售书目录,从而挑选自己满意的图书,并下订单购买。
而网站后台人员需要维护网站会员信息、书籍信息以及订单信息。
本系统的目的就是要开发一套既方便客户网上购书,又方便网站维护人员维护的网站。
1.3课程任务
问题提出与解决
网上书店:
明确所要开发的软件应具有的功能、性能与界面,使系统分析人员及软件开发人员能清楚地了解用户的需求,并在此基础上进一步提出概要设计说明书和完成后续设计与开发工作。
随着Internet的迅速发展,当今电子商务已接被广大的互联网用户所接受,网上书店系统作为其中的一部分也有了迅速的发展。
网上书店系统通过网上开店的方式向读者出售书本。
国内著名的两大书店,当当网与卓越网,他们售书的理念很简单,读者可以自己寻找自己喜爱的书。
读者无需为寻找一本自己想要的书好奔波于城市的各个角落,无需因为时间问题而错过了新书的首发式,或者因为时间问题而去不了书店,网上书店系统,只需你有一台可以连上互联网的电脑,就可以按照自己的兴趣检索到自己想要的书本。
2系统结构分析
2.1需求分析
需求分析就是描述系统的需求,通过定义系统中的关键域来建立模型。
分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制。
需求分析:
(1)能够显示书籍和对书籍进行分类。
(2)能够按照书名,出版社查询搜索书籍。
(3)能够购买书籍并放进购物车。
(4)能够添加,修改,删除购物车中的商品。
(5)能够登录,注册,和找回密码。
(6)能够下订单和查看订单,修改订单。
2.2功能分析
网上书店系统主要是实现网上选书、购书、产生订单等功能的系统。
一个典型的网上商城一般都需要实现商品信息的动态展示、购物车管理、客户信息注册登录管理、订单处理等模块。
网上书店系统的用例图如图2-1表示。
根据网上书店的基本需求,本系统需要完成的具体任务如下:
1、图书查询:
当客户进入网上书店时,应该在主页面中分类显示最新的书目信息,以供客户选择所需要图书,同时也应该提供按照图书名称,或者作者信息快速查询所需要书目信息的功能。
2、购物车管理:
当客户选择购买某图书产品时,应该能够将对应图书信息,例如:
价格、数量记录到对应购物车中、并允许客户返回书目查询页面,选择其它商品,并添加到购物车中,当对应购物订单生成后,应该能够自动清除以生成订单的购物车中的信息。
3、订单处理:
对应客户购买图书商品信息的需求,在确定了所购图书商品的价格、数量等信息后,提示用户选择对应的送货方式及付款方式,最张生成对应的订单记录,以便于网站配货人员依据订单信息进行后续的出货、送货的处理。
4、会员管理:
为了能够实现图书商品的购买,需要管理客户相关的联系方式和详细信息。
5、新闻管理:
为浏览者提供最新的图书信息和新闻信息。
图2.1UML活动关系
2.3系统模块
图2-3网站前台模块
图2-4网站后台管理模块
3数据库设计
3.1数据库需求分析
网上书店建设离不开数据库的支持,为了方便面对数据库的存取降低对硬件和软件的要求,网上书店采用Sqlsever作为后台的数据库,存放图书信息,客户资料,订单信息。
首先进行数据库的逻辑设计,分析用户活动所涉及的数据就是以数据流图的形式表示出数据的流向和对数据所进行的加工。
所谓分析系统数据就是对数据流图中的每一个数据流名、每个文件名进行加工,都要给出具体定义,都需要用一个条目进行描述。
描述后的产物是数据字典。
数据流图和数据字典结合在一起,加上必要的说明构成系统说明书。
依据网上书店的处理需求,对应数据库表的设计及功能如下:
1、图书基本信息表:
存放网上书店所销售图书的基本信息。
2、图书分类基本信息表:
存放网上书店所提供图书分类的信息。
3、会员基本信息表:
存放书店客户的基本信息。
4、订单信息表:
存放与客户相关的订单的基本信息。
5、订单条目详细信息表:
存放订单中详细条目的基本信息。
3.2数据库概念结构设计(E-R图)
图3-1数据库逻辑结构设计
3.3数据库逻辑结构设计(关系模型)
根据将E-R模型转换为关系模型的原则,可将其转换为如下关系数
字段名描述 类型
id订单编号int
username订单对应用户名varchar
time产生订单的时间smalldatetime
delivery订单对应送货方式varchar
payment订单对应付款方式varchar
字段名描述 类型
orderid订单编号 int
bookid图书编号 int
count订购数量 int
price该条目对应价格int
3.5数据库的连接
packages2jsp.lg.dao.impl;
importjava.sql.*;
publicclassBaseDao{
publicfinalstaticStringDRIVER="com.microsoft.jdbc.sqlserver.SQLServerDriver";//数据库驱动
publicfinalstaticStringURL="jdbc:
microsoft:
sqlserver:
//localhost:
1433;DataBaseName=bbs";//url
publicfinalstaticStringDBNAME="";//数据库用户名
publicfinalstaticStringDBPASS="sa";//数据库密码
/**
*得到数据库连接
*@throwsClassNotFoundException
*@throwsSQLException
*@return数据库连接
*/
publicConnectiongetConn()throwsClassNotFoundException,SQLException{
Class.forName(DRIVER);//注册驱动
Connectionconn=DriverManager.getConnection(URL,DBNAME,DBPASS);//获得数据库连接
returnconn;//返回连接
}
/**
*释放资源
*@paramconn数据库连接
*@parampstmtPreparedStatement对象
*@paramrs结果集
*/
publicvoidcloseAll(Connectionconn,PreparedStatementpstmt,ResultSetrs){
/*如果rs不空,关闭rs*/
if(rs!
=null){
try{rs.close();}catch(SQLExceptione){e.printStackTrace();}
}
/*如果pstmt不空,关闭pstmt*/
if(pstmt!
=null){
try{pstmt.close();}catch(SQLExceptione){e.printStackTrace();}
}
/*如果conn不空,关闭conn*/
if(conn!
=null){
try{conn.close();}catch(SQLExceptione){e.printStackTrace();}
}
}
/**
*执行SQL语句,可以进行增、删、改的操作,不能执行查询
*@paramsql预编译的SQL语句
*@paramparam预编译的SQL语句中的‘?
’参数的字符串数组
*@return影响的条数
*/
publicintexecuteSQL(StringpreparedSql,String[]param){
Connectionconn=null;
PreparedStatementpstmt=null;
intnum=0;
/*处理SQL,执行SQL*/
try{
conn=getConn();//得到数据库连接
pstmt=conn.prepareStatement(preparedSql);//得到PreparedStatement对象
if(param!
=null){
for(inti=0;i pstmt.setString(i+1,param[i]);//为预编译sql设置参数 } } num=pstmt.executeUpdate();//执行SQL语句 }catch(ClassNotFoundExceptione){ e.printStackTrace();//处理ClassNotFoundException异常 }catch(SQLExceptione){ e.printStackTrace();//处理SQLException异常 }finally{ closeAll(conn,pstmt,null);//释放资源 } returnnum; } } 4系统实现 (主要写实现的思路与数据库表操作的代码,) 4.1登陆界面 程序运行出现登陆界面,要求用户输入用户名和密码,当用户名和密码均正确时才能进入系统,如图4-1所示。 图4-1登陆界面 4.2购物车功能的实现 购物车页面所要实现的功能,实际上是负责将客户所选图书即该图书的有关信息保存到网站数据库相应的表中,同时在页面上显示当前客户已购买图书的名称,单价,数量和金额等。 除此之外,当客户去收银台结帐时,通常需要根据购物车中保存的这些信息来自动生成对应的图书订单,用户对本网站图书的购买,是通过“放入购物车”这个动作来实现的。 “查看购物车”页面如下图所示: 图4-2购物车界面 4.3订单信息 “订单信息”是“网上书店”电子商务网站的最后一步,在这里,用户将确定最终购买的图书,它是实现购物的关键. 图4-3汇款确认界面 4.4清空购物车 在完成了结帐和生成订单任务之后,就将进入清空购物车页面了,清空购物车的任务是清空购物车当中的所有图书记录,即以此来清理数据库中不必再保存的数据。 最后,通过网页重新定向功能自动返回到本网站的图书展示页面,以便客户继续浏览图书和购物。 此功能将清空购物车中的所有信息,为以后购物和管理提供了方便。 图4-4清空购物车界面 4.5搜索图书 本网站允许客户通过输入与图书有关的关键字来搜索所需的图书,为此搜索图书的操作是在本网站创建一个名为“search.jsp”的页面,用来搜集客户输入的图书查询关键字,然后打开有关的图书表,最后再返回到图书展示页面将查询到的图书结果显示出来,用户可以在该页面输入图书名称,点击“开始搜索”按钮,在图书管理的主界面中搜索所需要的图书,相应的参数“bn”就通过超连接传到“search.jsp”中: 搜索所要搜索的书籍,如图4-5所示: 图4-5图书搜索界面 4.6添加新书 电子商务网站网上书店能够实现向数据库中添加新书信息的功能,添加的信息包括图书类型、图书名称、作者、出版社、出版日期、图片、价格、数量以及内容简介等。 图4-6填写新书信息 点击添加商品后,数据库中就添加了该书,数据库中的信息如下图所示: 4-7添加完成界面 添加新的分类测试 填写新的分类信息为下图所示: 4-8添加书籍分类界面 点击添加后,数据库中就添加了新的分类,数据库中的信息如下图所示: 4-9确定分类界面 4.7实现逻辑 1、商品的添加 当管理员单击“商品添加”链接后,页面请求服务器从数据库中读取所需要的数据到页面并将数据保存到JavaScript数组中,然后在页面使用JavaScript编程,实现商品列表显示,提高系统的易用性。 管理员新增商品程后,可以在商品列表中显示并修改和删除草走,保证了数据的完整性, 2、商品的修改 当管理员单击“修改商品”链接后,页面请求服务器读取数据库中的部商品表中的全部数据到页面中,然后在页面使用,管理员可以修改相应的商品名称,也可以修改某个商品的属性,修改好以后单击【提交修改】按钮,系统首先在客户端使用JavaScript进行数据完整性判断,符合条件后提交至服务器Servlet进行处理,处理完成页面转向商品显示界面。 3、商品删除 当管理员单击“删除商品”链接时,页面实现下拉列表联动的方法同商品添加一样,用户选择好要删除的商品,单击【删除】按钮,请求提交至Servlet进行处理。 4、商品查询 包括商品名称查询,出版社查询。 通过图书信息显示的页面,在页面中选择将该书放入购物车,这样该书的基本信息就可以在用户的购物车中显示,如下图所示: 图4-11购物车页面 同样的书籍在购物车中可放入多本。 用户不可以在购物车修改购买数量;但可以将商品移出购物车。 点击继续购物,则购物车窗口关闭,进入图书的选购界面。 删除操作可以将购物车中所有书籍移出,此时购物车中没有任何书籍。 去收银台,网上书店显示如图所示: 4-12汇款信息界面 点击立即发送后,订单信息插入到数据库的order表中,如图所示: 4-13数据库的订单界面 5体会与心得 此次所作课题是网上书店,由于我们开发小组的编程水平和经验不足,有些功能的实现并不完美。 在已经完成的程序中,也存在许多不尽人意的地方,系统有待进一步改善,如如网络传输的保密性,安全性以及数据库的安全性还存在着一些缺陷。 在传输的过程中,可能会由于传输数据的丢失而造成软件运行出错。 但是这些问题也让我们充分认识到了软件开发的困难与挑战。 通过这次课程设计,使我们对电子商务网站的开发有了一定的了解。 对软件开发方法和手段,我们都有了一定的认识,丰富了我们的软件开发的经验,提高了程序编写的水平,加深理解了在课程中、书本上学到的知识和理论。 感谢老师辛勤指导! 参考文献 [1]耿祥义、张跃平JSP实用教程(第二版)清华大学出版社2007.10 [2]耿祥义、张跃平Java基础教程(第二版)清华大学出版社2007.5 [3]戴志诚SQLServer2005数据库系统开发与实例电子工业出版社2007.3 [4]王立丰J2EE课程设计指导北京大学出版社2008.8 [5]葛洪央Dreamweaver8网页设计大象出版社2007.9 [6]陈鹏、王森Photoshop应用基础(第二版)电子工业出版社2005.8 [7][美]JohnResign(著)陈贤安、江疆(译)精通JavaScript人民邮电出版社 [8]Comp-U-LearnTechnicalIndia(著)王强、贾素玲等编译HTML设计高等教育出版社2005.4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 书店
![提示](https://static.bdocx.com/images/bang_tan.gif)