《JSP网上书店》毕业论文.docx

上传人:b****5 文档编号:6648768 上传时间:2023-01-08 格式:DOCX 页数:24 大小:443.45KB
下载 相关 举报
《JSP网上书店》毕业论文.docx_第1页
第1页 / 共24页
《JSP网上书店》毕业论文.docx_第2页
第2页 / 共24页
《JSP网上书店》毕业论文.docx_第3页
第3页 / 共24页
《JSP网上书店》毕业论文.docx_第4页
第4页 / 共24页
《JSP网上书店》毕业论文.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

《JSP网上书店》毕业论文.docx

《《JSP网上书店》毕业论文.docx》由会员分享,可在线阅读,更多相关《《JSP网上书店》毕业论文.docx(24页珍藏版)》请在冰豆网上搜索。

《JSP网上书店》毕业论文.docx

《JSP网上书店》毕业论文

 

[摘要]本文描述了用JSP技术实现动态网上书店的开发概述、技术特征、应用原理及方法,充分突出了JSP技术的优越性。

简要论述了电子商务的优势、对社会的影响和建立电子商务网站应该注意的问题,并介绍了整个网站的运行流程,数据库的结构及网站的页面组成。

着重论述了购物车和购书管理子系统的具体功能实现、关键技术的使用,以及与其他方法的综合应用。

 

[Abstract]ThispageillustratesthetheoryandmethodofJSP(JavaServerPages).AndletyoulearntheadvantagesofJSP.Inthegraduationdesign,weuseJSPtocreatedynamicbookstorebasedonWeb.ItbrieflyexpoundsadvantagesandinfluenceofEC,andintroducestheflowofWebandstructureofthedatabase.Especially,itmakesanemphasisupon“shopingcart”and“buyingmanagement”,integratedapplicationofothermethods.

[关键词]电子商务JSP网上书店

[Keywords]ElectronicCommerce,JSP,Onlinebookstore

第一章电子商务漫谈

EC(electroniccommerce),即电子商务,是指通过信息网络以电子数据信息流通的方式,在全世界范围内进行并完成的各种商务、交易、金融等相关的综合服务活动。

它是传统的计算机网络应用技术、信息处理技术和商务运做技术相互渗透的结果,赋予了传统管理信息系统、网络和计算机应用系统全新的内涵。

常见的电子商务有两种形式:

企业对消费者(B2C)和企业对企业(B2B)。

一、为什么要进行电子商务

当前,在全球范围内,电子商务发展速度之快,推动力之大,已呈现出不可阻挡之势。

电子商务可以使企业获得以下优势,而这些优势正是传统企业很难得到的。

●面向客户,提供详尽的产品信息或服务介绍。

方便客户的信息索取,极大地节省业务接待、咨询和回应的负担及费用

●面向客户,提供产品或服务的预定或咨询接待。

●面向客户,提供售后服务或动态服务状态查询。

●面向客户,直接进行销售,直至完成支付和运输安排。

●面向媒体和股东,作为企业公共关系重要窗口,宣传企业最新动态和经营状况。

●面向其他合作企业,进行企业与企业间的销售、市场、开发、交流等方面的合作。

二、电子商务对社会的影响

电子商务的产生和发展对社会的方方面面产生了重大的影响,以下概括它对社会影响的典型方面。

1、电子商务将带来企业生产经营和内部管理方式的革命性变革。

通过互联网,整个世界都呈现在企业面前:

客户在网上与供应商联系,利用网络进行会计结算和支付服务;企业也可以通过网络方便的与政府、竞争对手、消费者联系。

2、电子商务改变人们的消费方式。

网上购物的最大特征是消费者为主导,购物意愿掌握在消费者手中;消费者还可以以一种轻松自由的自我服务方式来完成交易,消费者主权可以在网络购物中心中充分体现出来。

3、电子商务将带来一个全新的金融业。

由于在线电子支付是电子商务的关键环节,也是电子商务得以顺利发展的基础条件。

随着电子商务在电子交易环节上的突破,网上银行、银行电子支付系统以及、电子支票、电子现金等服务,将传统的金融业带入一个全新的领域。

除了上述这些影响外,它还将对政府行为、法律制度、就业以及文化教育等带来巨大的影响。

三、建立电子商务网站应注意的问题

建立一个电子商务网站时,应特别注意以下几个方面:

1、注意整体的服务功能和服务水平。

2、确定基本服务项目。

3、增强品牌意识。

4、注重应用新技术。

总之,建立和经营好一个电子商务网站对开展电子商务是十分重要的,必须给予足够地重视。

第二章《网上书店》开发概述

一、开发技术

本次毕业设计的任务是,构建一个电子商务网站——网上书店,采用的主要技术是基于服务器端的JSP、Java的组件JavaBean,以及网页编程语言HTML(还有SQL、链接数据库JDBC-ODBC)。

不再需要括号

JSP是JavaServerPage的缩写,是由SunMicrosystems公司倡导、许多公司参与建立一种动态网页技术标准,它在动态网页的建设中有强大而特别的功能。

JSP是一种服务器端HTML(或XML)嵌入Java代码的脚本语言,是开发Web动态网站快速而有效的工具。

JSP的技术的优势:

1、JSP技术是用Java语言作为脚本语言的。

Java语言是成熟的、强大的、易扩充的编程语言。

2、高效性与安全性。

JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。

3、可维护性。

由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。

4、稳定性。

5、产品的多样性。

目前,在国内JSP还是一种较新的技术,采用的较少。

但在国外,JSP+Servlet+JDBC+JavaBean已经成为开发电子商务平台的主流技术。

随着国内与国际的接轨,JSP必将成为网站开发技术的首选。

二、开发环境

这次设计是在单仿真环境下开发的,即一台计算机上同时安装浏览器与WEB服务器。

由于计算机没有连接网络,在计算机中应安装TCP/IP协议。

接着,安装JSP引擎——j2sdk1.4.2,以及Resin-3.0.9服务器。

只有在JSP引擎存在的条件下,Resin服务器才能正常运行,并且JSP引擎为我们提供了在编码时要用到的所有Java类和方法。

第三章《网上书店》功能概述

一、网站功能概述

《网上书店》主要分为八大模块:

用户登录注册、网上购物、讨论区、访客计数、线上投票、问卷调查、实时新闻和管理系统。

各模块的功能如下:

(一)、用户登录、注册

用户注册是为了保证用户在本网站的安全性,便于网站管理。

用户登录后才可以进行购物。

(二)、网上购物

用户在进行网上购物时,必须现登陆,如果是新用户,则必须先进行注册。

1、书籍展示

用户可以通过搜索的方式查看书籍信息,搜索的方式有:

按图书类别、按书名、按作者、按出版社。

每本书都显示了书名、作者、定价、特价等,如果想了解每本书的详细信息可以点击书名,详细信息还包括了书影、内容简介等。

2、购物袋

用户在浏览书籍时,按下“放入购物袋”按钮,就可以将书籍放入自己的购物袋中,便于购买。

用户还可以根据自己的需要,进行查看、修改和清空购物袋的操作。

(三)、访客计数

用户登录时,计数器自动加一,并保证用户的其他操作使计数器不会改变。

(四)、网上投票

通过“网上投票”,可了解用户对某本书的喜爱程度。

并显示最受欢迎的前七本书,用户在此可购买这些书。

(五)、问卷调查

用户可以填写对某本书的意见。

(六)、讨论区

用户可以在此发表新文章,也可浏览以前的文章,并可对其他用户所写的文章进行回复。

(七)、管理系统

管理系统是系统管理员对整个网站后台数据库进行维护,是此网站最重要的大门。

在进入本栏目时系统会提示输入系统管理员的用户名和密码,对于其他用户此界面是不可见的。

它包括用户管理、书籍管理、新闻管理和讨论区管理,这里重点介绍书籍管理。

书籍管理包括图书库存管理、订单管理、图书销售情况管理。

1、图书库存管理

管理员可以添加新书、添加书籍分类以及修改书籍库存信息和删除书籍。

2、图书销售情况管理

管理员可根据日期和书号任一种或这两个条件作为查询条件,了解图书的销售情况。

3、订单管理

(1)若管理员获得支付方式为汇款的用户的汇款,可凭汇款上的定单号,查询此定单的有关信息,并可作某些修改操作,如:

将数据库表中的“是否支付”栏,更改为“Y”。

(2)若本网站已寄书给用户,管理员将凭定单号,查询此信息,并修改数据库表中“是否寄出”栏为“Y”。

(3)若查询得到的定单信息中“是否支付”栏或“是否寄出”栏已为“Y”,则此信息不可改变,这样可以防止管理员误操作。

管理员还可以根据日期查询并删除在此日期中的还未付款的用户信息。

二、网站功能模块图

I三、网站流程图

 

 

第四章各子系统的功能实现

我们的网上书店包括八大功能模块,我在这里详细介绍一下购物车的实现和书籍管理系统的实现。

一、购物车

用户对本网站图书的购买,是通过“放入购物车”这个动作来实现的。

由于用户选择的书并不意味着一定要定购,因此,没有必要对数据库进行操作。

只是将用户选购的书号与该书的购买数量以字符串的形式存放于购物袋中,格式如:

书号1:

数量1&书号2:

数量2&,依此类推。

在购物袋中,用户还可以对选购的商品进行查看、修改及清空操作。

★文件流程如下:

(对箭头进行说明)

(1)放入购物车

★参数传递

我们这里放入购物车的操作是通过超连接来传递参数的。

具体代码如下:

bno=<%=bookno%>">放入购物车

★“放入购物袋”操作的实现

这个动作的实现由文件cart.jsp完成。

它对参数处理的算法如下。

用request对象,方法getParameter,获取传过来的书号bno;

qty默认值是1;

然后在将其id及qty放入购物车;

在放入购物车时要判断该书是否已经存在

如果存在则不放入,不存在在放入购物车中

 

(2)查看购物车

“查看购物车”功能,是显示用户选购的书籍信息,包括书名、作者、订购数量、单价、特价、金额小计。

若用户在未选购书的情况下,点击“查看购物车”,系统将提示用户“尚未选购”。

所用文件为viewcart.jsp、BookList.java、BookShopDB.java。

★“查看购物车”页面如图:

(3)订购

“图书订购”是“网上购物”子系统的最后一步,在这里,用户将确定最终购买的图书,它是实现购物的关键,用户在cart.jsp或viewcart.jsp页面中点击“订购”后,就把用户当前所选购的图书以及相关信息插入到订单信息表中,实现订购的全过程。

相关的还要将图书的“剩余”信息做判断和相应的修改。

(4)清空购物车(为什么没有图例呢)

此功能将清空购物车中的信息,并在窗口中显示“购物车中没有商品”的信息。

二、书籍管理系统(文件的流转关系图呢)

网上书店的书籍管理系统中,管理员可以添加新的书籍、修改书籍库存信息、删除书籍、添加新的图书分类等。

(1)图书管理主页面

“adminall.jsp”是图书信息管理的主界面,在这里可以查看每本书的信息,并提供了修改书籍库存、删除书籍、添加书籍和添加书籍分类的连接。

★图书管理主界面的页面如下

★在这个页面中,首先用创建一个所有信息的记录集“rs”。

关键代码如下:

useBeanid="db"scope="page"class="BookShop.DBC"/>

<%ResultSetrs=db.executeQuery("select*fromBook,Class

whereBook.ClassNo=Class.ClassnoorderbyBookNo");%>

 

这样就可以通过这个记录集,从数据库中读取书好、书名、所属分类、库存等信息。

在页面中加入修改库存、删除、添加新书、添加书籍分类的连接,分别指向update_book.jsp、delbook_ok.jsp、addnewbook.jsp和addnewclass.jsp。

(2)删除书籍

删除书籍的操作是在“delbook_ok.jsp”页面中完成的,在图书管理的主界面中点击删除后,相应的参数“bn”就通过超连接传到“delbook_ok.jsp”中:

bno=<%=bn%>'class="style1",500,500>删除

 

★删除书籍的关键代码是:

<%

intbno=Integer.parseInt(request.getParameter("bno"));

Stringdel_sql="deletefromBookwhereBookNo="+bno;

del.executeUpdate(del_sql);

%>

 

用request.getParameter()获取从“adminall.jsp”传来的bno,然后通过删除语句删除所要删除的书籍。

(3)图书库存管理

图书库存管理包括“update_book.jsp”和“updatebook_ok.jsp”页面。

在图书管理的主界面中点击“修改库存”后,相应的参数“bn”就通过超连接传到“updatebook_ok.jsp”中:

bno=<%=bn%>'class="style1",500,500>库存修改

 

★“update_book.jsp”页面是填写修改库存信息的页面:

在输入新增入库数量后,点击“增加”按钮后,连接到“updatebook_ok.jsp”页面,在该页面中进行添加修改到数据库的处理。

用request.getParameter()来获取从“update_book.jsp”传来的String型数据,再通过Integer.parseInteger()将String型数据转换成int型,最后实现对数据库中数据的修改。

★“updatebook_ok.jsp”中的关键代码如下:

useBeanid="up_db"scope="page"class="BookShop.DBC"/>

<%

Stringupdate_sql1="updateBooksetAmount=Amount+"+num+"whereBookNo="+bookno;

up_db.executeUpdate(update_sql1);

Stringupdate_sql2="updateBooksetLeav_number=Leav_number+"+num+"whereBookNo="+bookno;

up_db.executeUpdate(update_sql2);

%>

“up_db.executeUpdate(update_sql1)”是将添加的数量增加到入库信息中;

“up_db.executeUpdate(update_sql2)”将添加的数量增加到剩余书籍信息中;

这样就完成了对书籍库存信息的修改。

 

(2)添加新书

书籍管理系统能够实现向数据库中添加新书信息的功能,添加的信息包括分类、书名、作者、出版社、图片、价格、数量以及内容简介等。

用户在添加新书时,首先在“addnewbook.jsp”页面中填写要添加的新书的相关信息,确认填写信息正确后,点击“添加新书”按钮,在“addbook_ok.jsp”页面中,用request对象获取从“addnewbook.jsp”中传来的新书的信息,然后添加到数据库中,最后返回到“addnewbook.jsp”页面。

★“填写新书信息”页面如图:

★“addnewbook.jsp”页面是通过form表单来提交数据的,关键算法如下:

先建立一个form表单

用input属性建立多个文本框,其中分类用下拉列表框来显示

建立一个submit按钮

建立清除按钮

 

其中显示分类的方法如下:

useBeanid="add_book"scope="page"class="BookShop.BookShopDB"/>

<%ResultSetsel_rs=add_book.executeQuery("Select*fromClassorderByClassNo");

while(sel_rs.next()){%>

">

<%=sel_rs.getString("ClassName")%><%}%>

 

★“addbook_ok.jsp”页面中,添加新书操作的关键算法如下:

引入javabean,连接数据库;

useBeanid="addbook_ok"scope="page"class="BookShop.BookShopDB"/>

用request对象获取form中的信息;

如:

Stringname=request.getParameter("name");//获得书名

/将获取的信息由String转换成相应的数据类型;

如:

intbclass=Integer.parseInt(request.getParameter("bclass"));//转换为int型

然后,将获取到的信息插入到数据库的Book表中;

Stringinsert_sql="insertintoBook(BookName,Author,Publish,Content,ClassNo,Picture,Price,WebPrice,NowPrice,Amount,Leav_number)values('"+name+"','"+author+"','"+publish+"','"+content+"','"+bclass+"','"+pic+"','"+price+"','"+webprice+"','"+nowprice+"','"+amount+"','"+leave+"')";

addbook_ok.executeUpdate(insert_sql);

 

(3)添加新的分类

添加新的分类时,在“addnewclass.jsp”页面中,为方便管理员添加新的书籍分类,要先列出目前已有的书籍分类,然后再提交给管理员添加新的分类的文本框。

管理员点击“添加书籍分类”按钮后,填写的书籍分类就传到“addclass_ok.jsp”页面,在该页面中完成添加操作,将新的书籍分类插入到数据库的Class表,最后返回到“addnewbook.jsp”页面。

★“addnewclass.jsp”页面如图:

★“addnewclass.jsp”页面是通过form表单来提交数据的,关键算法如下:

用select属性建立分类的下拉列表框

用input属性建立一个文本框

 

★“addclass_ok.jsp”页面中,添加新书操作的关键算法如下:

useBeanid="addclass_ok"scope="page"class="BookShop.BookShopDB"/>

Stringcname=request.getParameter("classname");

Stringinsert_sql="insertintoClass(ClassName)values('"+cname+"')";

addclass_ok.executeUpdate(insert_sql);

 

第五章系统测试

系统测试,主要是对购物车和购书管理系统的测试。

一、测试购物车

★通过图书信息显示的页面,在页面中选择将该书放入购物车,这样,改书的基本信息就可以在用户的购物车中显示,如图1:

图1

★同样的书籍购物车中只有一本,不能重复放入

★用户可以在购物车修改购买数量;也可以将商品移出购物车

★点击继续购物,则购物车窗口关闭

★清空购物车可以将购物车中所有书籍移出,此时购物车中没有任何书籍。

★订购,系统显示如图2:

图2

★点击订购后,订单信息插入到数据库的Sheet表中,如图3:

图3

二、购书管理系统测试

(1)图书管理主页面如图4:

图4

(2)点击“删除”后,相应的图书就被删除,结果如图5:

(相应的数据库中的信息)

图5

(3)点击“库存修改”后,进入图书的库存修改,显示如图6:

图6

★点击“增加”后,修改数据库的库存信息,数据库修改如图7:

图7

(4)添加新书测试

★填写新书信息为图8:

图8

★点击添加后,数据库中就添加了该书,数据库中的信息如图9:

图9

(5)添加新的分类测试

★填写新的分类信息为图10:

图10

★点击添加后,数据库中就添加了新的分类,数据库中的信息如图11:

图11

第六章数据库设计

网上书店采用MicrosoftAccess2004作为后台的数据库。

我们建立了一个名为BookShopDB的数据库用于存放以上介绍的表,各表的名称和功能如表1所示。

表1BookShopDB数据库中的表及其功能说明

表名

功能说明

Book

书籍信息表

Class

书籍分类信息表

User

用户信息表

Admin

管理员信息表

Sheet

订单信息表

message

留言信息表

counter

计数器信息表

下面将详细介绍各表的数据结构。

1、Book表

在Book(书籍信息表)表中,存放有关书籍的一切信息,详细的数据结构如表2所示。

表2Book表的数据结构

字段名称

数据类型

长度

说明

BookNo

自动编码(long)

关键字,书籍编号

BookName

文本(String)

50

书籍名称

Author

文本(String)

50

作者

ClassNo

数字(long)

用于存放书籍分类的编号

Publish

文本(String)

50

出版社

Content

备注(String)

内容简介

Picture

文本(String)

图片信息

Price

数字(double)

书籍定价

WebPrice

数字(double)

本站的售价

NowPrice

数字(double)

现价

Amount

数字(long)

书记入库的总量

Leav_number

数字(long)

剩余书籍的数量

RegTime

日期(datetime)

登记日期,默认值Date()

2、Class表

在Class(书籍分类信息表)表中,存储所有书籍分

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1