基于BS结构的二手交易系统的设计与实现

基于BS结构的二手交易系统的设计与实现[java毕业论文下载]

基于B/S结构的二手交易系统的设计与实现

摘  要

随着科学技术和信息通讯的飞速发展,Internet极大的丰富和改变着我们生活的各个行业。随着Internet的普及应用,人们可以跨越时间和空间的限制,足不出户便能通过网络完成信息交流,而完成这一切我们需要的便是网络交易系统这个平台。为实现这一目的,本设计通过详尽的分析和探讨,利用网络编程和数据库来实现基于B/S结构的二手平台交易系统,从而为注册用户提供一个发布资源的平台,实现物品信息的交流和共享的功能。

系统开发遵循软件工程的设计方法,采用ASP作为系统开发语言,使用SQL SERVER 2000数据库作为整个交易系统的数据库服务器,提供数据存储和调用。通过设计最终实现了一个二手物品的交易平台。通过该系统可以方便、有效的进行二手物品的交易。

 

关键词:数据库;二手交易;B/S 

 

The Design and Realization of Secondhand Exchange System Based on B/S

Abstract

With the rapid development of science and information technology in recent years, Internet has greatly changed the aspect of almost every occupation of our lives. For the sake of network wildly been used, people can easily overcome the limitation of space and time to communication without going out of home. So what need us to do is to design a secondhand exchange system to achieve these goals. For this purpose, the thesis makes use of network programming and database to implement the system based on B/S model through comprehensive analysis and discuss which finally makes register user having a platform to issue resources and information.

The system is developed according to software engineering, and ASP and SQL SERVER 2000 Server is adopt to implement this system, which supply the storage and access data information. The thesis accomplishes the design of secondhand exchange system finally. By this system, we can conveniently exchange secondhand stuff.

 

Key words: Database; Secondhand Exchange; B/S


目  录

论文总页数:26页

 

1 引言 1

1.1 课题背景 1

1.2 国内外研究现状 1

1.3 本课题研究的意义 1

1.4 本课题的研究方法 1

2 开发环境和相关知识的介绍 2

2.1 基于B/S结构的网络交易系统概述 2

2.2 开发环境的介绍 2

2.3 ASP的基本介绍 3

2.4 JAVASCRIPT的介绍 3

2.5 SQL Server介绍 4

3 系统需求分析和设计 4

3.1 功能模块的定义和划分 4

3.2 数据库的设计 5

3.2.1 实体关系图的确立 5

3.2.2 后台数据库的设计 5

4 二手交易系统的具体实施 7

4.1 登录模块 7

4.2 快速链接及搜索模块 11

4.2.1 快速链接模块 11

4.2.2 搜索模块 13

4.3 物品和用户注册模块 13

4.3.1 物品注册模块 13

4.3.2 用户注册模块 16

4.4 信息显示模块 18

4.4.1 信息显示模块的目标 18

4.4.2 信息显示模块的主要功能和实现方法 19

4.5 信息列表显示模块 20

4.5.1 信息列表显示模块的目标 20

4.5.2 信息显示模块的主要功能和实现方法 21

5 系统运行测试 23

结    论 23

参考文献 23

致    谢 25

声   明 26

 

 

引言

1.1 课题背景

在进入新的世纪后,随着科学技术的不断发展,尤其是在上世纪计算机大量的普及应用的基础上,新的信息技术继续深刻的影响着人们的传统生活方式,它不仅改变着人们生活的面貌,同时也极大的提高了人们的生活质量,使很多原先无法想象的事物逐渐变成了现实,网络以其将虚拟性与现实相结合的巨大魅力和跨越时间空间的便利性决定了这将是一种影响人类发展的革命性事物,在为人们的生活和学习提供了巨大的方便,衍生的种种也已经渗透到了人们现实生活的方方面面。电子商务作为其中的重要应用之一已经逐渐普及,成为人们生活中的重要组成部分,基于网络的支付手段和在线交易,已经成为新的商务趋势。尤其是以个人交易为主的基于B/S模型的二手网络交易模式,更是在近几年蓬勃兴起,为网络的繁荣增添了新的活力。

1.2 国内外研究现状

自从有了网络这个巨大的平台之后,人们开始逐渐意识到其蕴涵的巨大优势和商业价值,它的潜力以及使用范围更是无法估量。经过不断的摸索和探究,电子商务逐渐走向成熟,在现在达成共识的应用模式中,整个C2C模式(Custom To Custom)又因其广泛的参与性和可操作性在最近几年得到了极大的发展,国外最成功的例子EBAY所取得的巨大成功和影响力我们可以看到,这种交易模式的魅力和价值已经得到了广泛的认同。同样,近几年在国内新起的淘宝也获得了很大的成功,这些成功并不是偶然的,它们都得益于基于B/S结构网络交易系统,所以他们的成功也可以看作是基于B/S结构网络交易系统模式的成功。

1.3 本课题研究的意义

就经济行为而言,在传统的物品交易中,由于传统通信交流手段的限制,供求双方的信息极不畅,这就造成了需求双方信息的不平等,即买家找不到卖家,卖家找不到买家,这就给我们的商业活动带来了极大的不方便,但通过这样的需求现状同时可以反映出现实市场的巨大需求,我们可以通过技术手段极大的弥补这一缺憾。在应用网络之后,我们可以高效率的利用和整合这些供求资源。这其中就需要有一个基于B/S结构的,高效方便的交易系统来完成。

1.4 本课题的研究方法

本论文将试图通过对基于B/S结构的二手交易系统的概念本身的阐述,当前应用的情况做一个概要性的介绍,并采用软件工程的开发流程,主要通过对一个完整的基于B/S结构的二手交易系统的构想进行分析,做出相应的概要设计,并进一步进行分析,做出关于此系统的详细设计,然后进行编码,测试,直至最终的完全实现,本论文将会对系统的全面实现详细做完整的阐述。

2.1 基于B/S结构的网络交易系统概述

B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构。

B/S结构技术的发展与管理思想一样,也经历了三个发展时期:界面技术从DOS字符界面,到Windows图形界面(或图形用户界面GUI),直至今天的Browser浏览器界面。最新浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其界面风格一致,用户对操作培训的要求大为下降,软件可操作性增强;平台体系结构也从单机单用户发展到文件/服务器(F/S)体系,再到客户机/服务器(C/S)体系和浏览器/服务器(B/S)体系。

B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统,而且随着软件系统的改进和升级越来越频繁,B/S架构的产品明显体现更方便的特性。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,如果是异地只需要把服务器连接上网,即可立即进行维护和升级,这对人力、时间、费用的节省是相当惊人的。

2.2 开发环境的介绍

本论文涉及的二手交易系统开发环境,前台是ASP结合HTML语言与Javascript,Vbscript脚本语言生成界面。后台则使用ASP用于表单提交和逻辑判断处理,数据库方面采用的是SQL Server 2000数据库服务器,整体性能比较强大,可以高效率的存储相应的数据信息。网页服务器是采用IIS 5.0为服务器,整个开发环境的软硬件具体配置需求如下:

 

 

 

 

 

表1 系统开发环境示意图

系统平台

硬件平台

CPU:P4 1.8GHZ;

内存:256MB以上

操作系统:Windows xp  Server;

数据库:SQL Server 2000;

ASP服务器:IIS 5.0

浏览器:IE 5.0以上

 

2.3 ASP基本介绍

在本设计中,代码部分的实现是采用ASP,ASP是Active Server Page的缩写,意为“活动服务器网页”,ASP的网页文件的格式是.asp,现在常用于各种动态网站中。与HTML相比,ASP网页具有6大特点。

  ASP是Active Server Page的缩写,意为“活动服务器网页”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。 ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。 

  与HTML相比,ASP网页具有以下特点:

利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;

ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;

服务器上的ASP解释程序会在服务器端制定ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;

ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;

ASP可以使用服务器端ActiveX组建来执行各种各样的任务,例如存取数据库、发现Email或访问文件系统等。

由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可不用担心ASP程序代码被窃取。

2.4 JAVASCRIPT的介绍

在本设计中,ASP页面采用的大部分脚本语言是JavaScript,JavaScript是一种基于对象的脚本语言,使用它可以开发Internet客户端的应用程序。JavaScript在HTML页面中以语句形式出现,并且可以执行相应的操作。其具有如下特点:

JavaScript是一种脚本语言。

JavaScript是基于对象的语言。

JavaScript是事件驱动的语言。

当你在Web主页中进行某种操作时,就产生了一个“事件”。事件几乎可以是任何事情:敲击一个按钮、拖动鼠标等均可视为事件。JavaScript是事件驱动的,当事件发生时,它可对之作出响应。具体如何响应某个事件取决于你的事件响应处理程序。          

JavaScript是安全的语言,JavaScript被设计为通过浏览器来处理并显示信息,但它不能修改其它文件中的内容。也就是说,它不能将数据存储在Web服务器或用户的计算机上,更不能对用户文件进行修改或删除操作。

JavaScript是与平台无关的语言。

2.5 SQL Server介绍 

本系统是采用SQL Server 2000作为开发的数据库。关系型数据库管理系统(RDBMS)是当今软件行业中最重要的数据库系统,其中杰出的系统之一便是MS SQL Server。由于SQL Server与WinndowsNT/2000这两种操作系统结合得非常紧密,因此它被认为是在这两种操作系统下最适用的数据库系统。其次,相对于Foxpro、Access等个人数据库而言,MS SQL Server是一个功能完备的“正规”数据库管理系统。它包括支持开发的引擎,标准SQL语言,扩展的特性(如复制、OLAP、分析)等功能,是一些大型数据库如Oracle才具备的特性。而且像存储过程、触发器等特性也是个人数据库所没有的。

设计中在使用SQL SERVER的过程中主要是完成信息的录入、读取和更新等功能。

录入的信息包括用户的相关数据,还有物品的相关信息。

3.1 功能模块的定义和划分

在本设计中,注册用户可以使用二手平台交易系统发布自己的信息,这包括了需求信息和注册信息,同时还可以上传物品的图片。但是没有登陆的游客则不能进行信息的发布。但游客不需要注册便可以直接浏览用户发布的信息,并且可以进行留言来与物品发布者联系。

管理员是通过后台数据库直接添加的,前台无法注册。管理员可以针对整个二手平台交易系统中的留言信息进行管理,删除不合乎要求的留言,从而达到管理的目的。

对于一般可能常用的物品信息搜索,本设计采用了快速搜索栏和热门搜索,游客只需在主页面的上方直接点击进入相关产品。而主页面下部分则提供了完整的物品分类信息。

通过前期的需求分析和判断,在本系统中,实现所需要几个功能功能需要几个模块的共同实现,它们是登陆模块,快速链接和搜索模块,物品和用户注册模块,信息显示模块,以及信息列表显示模块。

登陆模块主要完成两个任务,首先是判断当前用户的SESSION值,如果当前值为空就显示登陆界面,而且还有新用户注册的超级链接。用户如果这时没有用户名和密码就可以通过新用户注册来注册一个自己的帐号。如果登陆模块判断用户SESSION为普通用户,那么显示相应的普通用户的操作菜单,包括物品发表,密码修改和退出。如果登陆模块判断用户SESSION为管理员,那么就显示相应管理员的操作菜单,这其中包括发布物品,修改密码,还有退出。当管理员查看某一个具体的物品时候,可以对该物品的留言信息进行管理,可以删除不符合要求的留言。而游客和普通用户则没有这样的权限。

3.2 数据库的设计

3.2.1 实体关系图的确立

在设计本系统中,后台数据库的设计是首先考虑的一个重要的问题,确立了对象模型才能够进行高效率的数据查询。E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图来表示。实体是系统中的事物;属性是对实体特征的描述。本系统的E-R图如下: 

 

n                  m

 

 

 

 

图1 系统实体关系图

首先我们可以确立的是用户和物品两个实体,所以需要为这两个实体分别创建一张表。这两个实体之间的关系,对于一个用户来说,他可以对多个物品进行留言,而对于一个物品来说,他也可以被多个用户留言,那么这就是一种多对多的关系,所以还需要一张表来记录相关的留言的信息,创建张留言表。

 

3.2.2 后台数据库的设计

在系统采用了一个名为design的数据库,里面使用了yonghu表、wupin表、liuyan表三张表来存储用户和物品的相关信息。Yonghu表用来存放普通用户和管理员的相关信息,wupin表用来存储物品的信息。

表2 用户表(yonghu table)

列名

数据类型

说明

id

int

Yonghu表的主键,自增项,唯一的标识和区分每一个用户

username

Varchar(20)

用户帐户

password

Char(20)

用户密码

usertype

Char(10)

用户类型,可以为普通用户或者管理员

realname

Varchar(20)

用户的真实姓名

tel

Char(20)

用户的联系电话

email

Char(40)

用户的电子邮件

sexy

Char(10)

用户的性别

 

 表3 物品表(wupin table)

列名

数据类型

说明

id

Int

Wupin表的主键,自增项,唯一的标识和区分每一件物品

title

Char(40)

发布物品信息的标题

brand

Char(20)

物品的品牌

Location

Char(20)

物品的产地

catagory

Int

物品的种类

tradetype

Char(20)

卖家/买家期望的交易类型

times

Char(20)

发布的时间

description

Char(200)

卖家对物品的描述

Picture

Char(20)

图片

statu

Char(20)

状态

name

Char(40)

物品名称

prices

Char(20)

物品的报价

 

 

 

表4留言表(liuyan table)

列名

数据类型

说明

id

Int

liuyan表的主键,自增项,唯一的标识和区分每一条留言信息

wpid

Int

物品的编号

yhid

Int

用户的编号

description

Char(200)

具体的留言信息

 

4.1 登录模块

登录模块的是本设计的一个主要模块,它起到判断用户身份的作用,根据不同的用户返回不同的管理界面,或者是登录界面。

 

用户登录模块的目标有两个:

第一个是判断用户的状态是否登录,如果没有登录的话就显示登录窗口,提供帐号和密码的输入界面。如果这个时候用户还没有注册过的话那么就提供注册新用户的超级链接。

 

 

图2 用户登录框

 

如果判断用户已经登录,那么显示欢迎界面,同时继续判断用户类型,具体是普通用户还是管理员。如果普通用户显示普通用户的管理界面,如果是管理员就显示相应的管理员的管理界面。

 

图3 普通用户管理界面

 

图4 管理员管理界面

在本设计中,整个用户登陆模块是镶嵌在首页的框架里面一个叫login.asp的文件里面的,大小和字体通过CSS的定义,用户直接在首页面上就可以完成登录和相关操作。

整个页面同时引用了另外一个ASP页面,top.asp这个主要是定义了网站的BANNER和快速搜索和链接选项。实现的效果是在功能模块实现翻转的时候BANNER和快速搜索菜单栏依然保留,而不仅仅是在登陆的一个界面上有。

用户登录模块的主要实现方法如下:

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<script language="javascript">

function check()

{

  

   if (document.login.account.value=="")

  {

    window.alert("帐户名不能为空!")

    return false;

  }

  return true

}

</script>

</head>

首先定义一个名字是CHECK的JAVASCRIPT的函数,这个将在后面的登录窗口用到,这个函数的作用是填写登录名的时候不能使用空帐号,这样可以把判断留在前台来完成,从而减少后台处理的时间和步骤。

下面是判断用户已经登录了的情况,对用户的SESSION变量进行分析,如果是普通用户或者管理员就显示相应的界面

界面的每一个选项分别对应一个相应的ASP程序。其中最后一个退出登陆的out.asp就是一个后台程序,原理是把SESSION变量清空

管理员的判断过程及其管理界面也是同样的道理。

从逻辑上,如果以上两种情况都不是,也就是说登录模块判断用户当前没有登录,那么将显示登陆窗口,为用户提供输入用户名和密码的地方。

在这个地方,如果用户没有注册,可以点击链接进行注册,名字是registeruser.asp.当用户点击注册新用户这个按钮的时候,页面将会自动跳转到这段程序上。

<form method="post" action="checklogin.asp" name="login" onSubmit="return check()">

'这是定义登录模块的表格,指明了传送的方式为POST,传送至后台的接收页面是checklogin.asp,并且当用户点击提交这个按钮的时候 ,onSubmit="return check()"指明执行CHECK()这个JAVASCRIPT函数,也就是前面定义的检查值函数。

接收这个前台ASP程序的后台是checklogin.asp程序 代码如下

<!--#include file="conn/conn.asp"-->

<%

dim usertype,username,password

usertype=trim(Request("usertype"))

username=trim(Request("username"))

password=trim(Request("password"))

 

set rs=server.CreateObject("ADODB.RecordSet")

rs.open "select * from yonghu where username='"&username&"' and password='"&password&"' and usertype='"&usertype&"'",conn,1,1

 

if rs.eof and rs.bof then

    response.write"<SCRIPT language=JavaScript>alert('用户名或密码不正确!');"

    response.write"javascript:history.go(-1)</SCRIPT>"

    response.end

else

      session("name")=rs("username")

      session("usertype")=trim(rs("usertype"))

  session("password")=rs("password")

      response.redirect "main.asp"

end if

rs.close

set rs=nothing

call CloseConn()

%>

'其中<!--#include file="conn/conn.asp"-->是与数据库的连接,在这里采用了公共连接文件conn.asp这是采用OLEDB方式来与后台SQL SERVER数据库连接同时使用了username,usertype,password三个临时变量来接受前台传送过来的变量。

set rs=server.CreateObject("ADODB.RecordSet")

rs.open "select * from yonghu where username='"&username&"' and password='"&password&"' and usertype='"&usertype&"'",conn,1,1

'这一段语句的作用是创建一个名为rs的记录集,通过这个rs记录集来对保存在数据库中的密码信息进行搜索,i

f not rs.eof then 

'如果记录集没有到达底部

if password=rs("password") 

'并且找到了与前台传递过来密码相符合的后台数据库记录,那么

session("id")=rs("ID")

session("name")=rs("username")

session("usertype")=普通用户

Response.Redirect("main.asp")

end if

'给当前的登陆用户赋三个SESSION变量值,分别是session("id"), session("name") session("usertype")

然后Response.Redirect("main.asp")

带上这三个参数返回main.asp ,main.asp是包含了login.asp的主框架页面,当返回之后login.asp会像上个章节所说的那样,对当前用户的SESSION进行检查,这个时候因为已经登录了,所以会根据不同的用户类型显示不同的管理界面。

else Response.Redirect("checkloginfail.asp ")

但这里还要考虑到另外一种情况,就是用户输入的密码信息在数据库中没有找到或者说密码输入错误 那么就要显示出相应的错误界面。Checkloginfail.asp文件就是当出现错误的时候显示的。

4.2 快速链接及搜索模块

4.2.1 快速链接模块

快速连接模块是二手交易系统的一个重要组成部分,在二手交易系统中,快速连接模块分为两个部分,一个是位于banner下面的常用热门搜索,把用户可能会经常使用的一些搜索集合到一起,方便用户使用,另外一个部分是位于主网页下面全部种类,这里包括了二手交易系统的所有支持的种类,用户可以在这里找到自己需要的相关种类的信息。

快速连接模块的实现方法:

在实现这个模块的时候,使用的方式是超级链接加传递参数,把二手交易系统的物品分为九个大类,每个大类又包括了将近十个小类,每一个小类都有一个ID号,当用户点击每一个小类的按钮的时候,都会把一个参数传递给后台的ASP处理程序,后台ASP处理程序再根据这个值,从数据库中读取相应信息。

 

 

图5 快速链接模块部分1示意图

图6 快速链接模块部分2示意图

基于BS结构的二手交易系统的设计与实现[点击下载]

如需要全部源码,联系QQ:2812491287如需要全部源码,联系QQ:2812491287

评论