基于BS模式的网上购物系统的研究与开发.docx

上传人:b****8 文档编号:9152510 上传时间:2023-02-03 格式:DOCX 页数:45 大小:242.45KB
下载 相关 举报
基于BS模式的网上购物系统的研究与开发.docx_第1页
第1页 / 共45页
基于BS模式的网上购物系统的研究与开发.docx_第2页
第2页 / 共45页
基于BS模式的网上购物系统的研究与开发.docx_第3页
第3页 / 共45页
基于BS模式的网上购物系统的研究与开发.docx_第4页
第4页 / 共45页
基于BS模式的网上购物系统的研究与开发.docx_第5页
第5页 / 共45页
点击查看更多>>
下载资源
资源描述

基于BS模式的网上购物系统的研究与开发.docx

《基于BS模式的网上购物系统的研究与开发.docx》由会员分享,可在线阅读,更多相关《基于BS模式的网上购物系统的研究与开发.docx(45页珍藏版)》请在冰豆网上搜索。

基于BS模式的网上购物系统的研究与开发.docx

基于BS模式的网上购物系统的研究与开发

贵州财经学院

毕业论文

题目:

基于B/S模式的网上购物系统的研究与开发

——后台管理模块

 

学生姓名:

XXXXX

学生学号:

200510101010

指导老师:

XXXXXX

所在学院:

商务学院

年级:

2005级

专业:

计算机科学与技术

日期:

2009年3月20日

摘 要

本网上购物系统是一个基于Internet,采用B2C(BusinesstoConsumers)模式,并根据现有的网上购物系统的现状而设计开发的电子商务平台。

它不但可以扩大商家的规模和市场影响力,而且可以减少企业的经营成本,提高工作效率。

本文首先介绍了网上购物系统的现状及开发背景,然后论述了系统的设计目标,系统需求和总体设计方案,较详细的论述了系统的详细设计和实现。

最后,本文对网上购物系统进行了系统检测并提出了还需要改进的问题。

本系统主要为用户提供了会员注册,购物车管理,用户资料修改等功能,为管理员提供了商品管理,用户信息管理等功能。

结合着整个项目,本项目采用BS结构,在系统设计阶段,对页面的设计采用了struts框架,结合JSP实现了网页的动态显示,在后台业务层的实现采用了MVC分层模式实现了对前台页面请求的处理。

后台数据库选用MySQL数据库。

从快速开发方面考虑,运用了Hibernate框架实现对数据库的各项操作。

 

关键词:

B/S结构;JSP;Struts;Hibernate;Java

 

Abstract

TheshoponlinesystemisaelectroniccommercialplatformwhichhasbeendesignedaccordingtothesituationofshoponlinesystembasedonInternetwithB2Cmode.Itcannotonlyenhancethescaleofshoppingcentreandmarketinfluence,andcanalsoreducetheenterprise’srunningcost,improveworkefficiency.

Thethesishasfirstlyintroducedthepracticalsituationandthedevelopingbackgroundofthesystem.Andthenhasdescribedthedesigninggoal、systemneedandthewholedesigningplan,hasdescribedthedetaileddesignandrealityofthesystemindetail.Finally,conclusionhasbeendrawnaboutthesystemandproblemhasalsobeenraised.

Thesystemhasmainlyprovideduserswiththefollowingfunctions:

membershipregistration、shoppingcarmanagement、goodssearch、informationmodifyetc.Ithasalsoprovidedmanagerswithgoodsmanagement、customerinformationmanagement、newsmanagement、admanagementandsoon.

Accordingtoentireproject,thesystemusesBSstructure.Inthesystemdesignstage,thedesignofthepagesusingthestrutsframeworktoachievetheJSPpagewiththedynamicdisplay,inthebackgroundofthebusinesstoachievealayeredmodeloftheMVContheprospectsofachievingthepagesdealingwiththerequest.installed.ThedatabaseweusedisMySQL.Fromtherapiddevelopmentconsiderations,useHibernateframeworktoachievetheoperationofthedatabase.

KeyWords:

B/Sstructure;JSP;Struts;Hibernate;

 

一概述

1.1系统开发背景

近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。

于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。

网上购物系统作为B2B,B2C(BusinesstoCustomer,即企业对消费者),C2C(CustomertoCustomer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。

本文主要考虑的是如何建设B2C的网上购物系统。

网上购物是一种具有交互功能的商业信息系统。

它向用户提供静态和动态两类信息资源。

所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。

网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。

这种全新的交易方式实现了公司间文档与资金的无纸化交换。

1.2系统实现的目标

现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节。

这样才能使得在电子交易时避免不必要错误发生。

我们将使用HTML、JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。

传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。

当数据量比较大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。

本设计在实际应用中的解决方案是建立网站,以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解商品买卖的情况。

1.3系统的开发意义

Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:

利用Internet的技术和协议,建立各种企业内部网Intranet,企业外部网Extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。

而在实际的生活中,这种方案已经被广泛的运用到了实际的商业活动中了,人们将这种交易模式称为:

电子商务。

当今比较流行的网上购物系统国外有“淘宝()”,国内有“当当()”。

它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。

设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。

设计和完成一个电子商务网站的,将会牵涉到许多技术上的问题,如:

动态网页制作技术的,后台数据库的设计和管理,通过实际的制作个网站,可以避免纸上谈兵,在实践中掌握上述技术的使用。

二需求分析

系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善地被设计出来,就必须先进行调查研究。

在系统调查的基础上,对新系统的功能进行细致的分析,从而才能够开发出完整的系统设计

2.1网站的设计目标

此系统分为前台管理和后台管理。

前台管理是友好的操作界面,供用户浏览、查询使用。

包括:

浏览商品、查询商品、订购商品、购物车、用户维护等功能;后台管理是提供给管理员的,其中包括:

商品管理、用户管理等。

使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。

本文主要是前台购物管理。

2.2开发环境的需求

系统的建设关键在于其所使用的架构,而网上购物这种基于web的系统,传统的c/s架构已经不能满足大量用户的访问和操作,b/s基于浏览器的架构则是目前网络系统应用的主流,它将大量的数据处理工作交给服务器端来处理,客户端只用通过普通的IE浏览器即可访问系统,方便快捷而且利于系统的更新和维护,java语言在该方面更是得天独厚,j2ee规范的出现则使系统的开发更加规范,层次更加清楚,更利于对复杂事务的处理,而且在安全性方面也做的更好。

基于mvc的开发流程则使开发过程更加清晰明了,利于做一些复杂的逻辑实现,从而节省了开发周期和开发成本。

2.2.1开发语言的需求

Java是一种简单的面象对象编程语言。

将它作为本系统的主要开发语言主要体现在以下几点:

(1)面向对象

  Java语言的设计完全是面向对象的,具有抽象,继承,封装,多态的特点。

它提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。

(2)简单开发

Java语言是简单的,它摒弃了C++中很好使用很难理解也很容易出错的特性,如操作符重载,多继承等,特别地,Java语言不使用指针,并提供了自动的垃圾收集(GC),使得程序员不必为内存管理而担忧,因而它是简单易学的,它可以让我们放心的来关注我们的业务流程而不需要考虑各种内存溢出的情况。

(3)安全

  Java的安全性可从两个方面得到保证。

一方面,在Java语言里,象指针和释放内存等C++功能被删除,避免了非法内存操作。

另一方面,当Java用来创建浏览器时,语言功能和一些浏览器本身提供的功能结合起来,使它更安全。

本系统是一个WEB系统,安全性尤其重要,采用Java能够让我们的系统处于一个安全的环境,不受外来的非法操作而崩溃。

(4)跨平台

Java是一种跨平台的语言,因此用Java开发的网络应用系统可以在各种平台上运行,大大增加了开发效率,减少重复劳动。

而且,Java集成的网络功能分有利于开发网络应用系统。

本系统就是一个基于网络环境的开发,使用Java可以很好的满足本系统的要求。

2.2.2服务器的需求

本系统采用的是Tomcat服务器,Tomcat服务器是一个免费的开放源代码的Web应用服务器;是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

因为Tomcat技术先进、性能稳订,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。

Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。

Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。

对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。

实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。

在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。

另外Tomcat也提供了一个应用:

manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。

通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。

当然本地也可以。

2.2.3开发结构的需求

现在的系统归纳起来有2中结构:

CS(client/service)和BS(browser/service).

CS是针对特定群体的一种模式,它需要在客户端安装相应客户端软件,它的安全性比BS高。

BS是面向不订向的群体,它不需要用户安装任何软件,只要用户有浏览器即可登陆和此系统进行交互。

此系统采用的是BS模式,因为我们的用户是面向所有有意向购买机票的乘客。

BS结构的主要特点如下:

采用Internet/Intranet技术,适用于广域网环境

支持更多的客户。

可根据访问量动态配置WEB服务器、应用服务器,以保证系统性能。

客户端只需标准的浏览器

采用面向对象技术,代码可重用性好

系统扩展维护简单

开发费用较高,开发周期较长

这种三层体系结构如图所示

图2-1B/S三层结构图

2.2.4开发所需框架

任何系统都会有它自己的框架,框架的好坏决定了这个系统的工作效率和以后维护的难易程度,一个好的框架都遵循着MVC的分层框架。

在本网上购物系统中,将采用通行的MVC模式来构建应用。

并通过企业级高端J2EE应用服务器实现MVC开发模型。

如下图所示:

图2-2MVC开发模型

本系统应用了2个框架:

struts框架和持久层框架。

(1)struts框架

Struts是Apache软件组织提供的一项开放源码项目,它为JavaWeb应用提供了模型-视图-控制器(Model-View-Controller,简称MVC)框架,尤其适用于开发大型可扩展的Web应用。

Struts的优点主要集中体现在两个方面:

Taglib和页面导航。

Taglib是Struts的标记库,灵活动用,能大大提高开发效率。

另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。

关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。

通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。

尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。

Struts完成了servlet的编写,通过servlet它将要处理的请求都转向了Action处理,让我们处理请求的代码和发送请求的代码隔离开来,很好的实现了MVC的分层。

(2)持久层框架hibernate

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

2.3实体数据E-R图分析

(1)商品实体:

商品名,商品类别,商品号id,是否推荐,单价,折扣,图片,介绍,浏览次数,购买次数,状态。

图2-3商品实体的属性

(2)类别实体:

分类编号id,分类名,应用状态

图2-4商品类别实体的属性

(3)用户实体:

用户编号,用户名,密码,性别,姓名,Email、联系电话,安全问题,回答,积分,收货地址,邮编,状态

图2-5用户实体的属性

(4)管理员实体:

管理员编号,账号,密码,权限

图2-6管理员实体的属性

(5)用户订单实体:

订单号,所属用户,发货状态,支付金额,发货方式,付款方式,下单时间

图2-7订单实体的属性

(6)商品交易实体:

编号,商品名,商品数量,总价,所属订单

图2-8商品交易项实体的属性

(7)购物车实体:

商品交易项,总金额

图2-9购物车实体的属性

(8)留言实体:

编号,用户留言,管理员回复,留言时间,留言用户

图2-10留言实体的属性

以下几个图示实体与实体之间的关系:

图2-11商品类别实体与商品实体之间的联系

图2-12商品实体与商品交易项实体之间的联系

图2-13订单实体与商品交易项实体之间的联系

图2-14用户实体与订单实体之间的联系

图2-15用户实体与留言实体之间的联系

图2-16购物车实体与商品交易项实体之间的联系

图2-17各实体之间E-R图

2.3建立用例模型

(本文只做后台管理模块的用例分析)

功能描述如下:

管理员管理,商品管理,用户管理,留言管理,订单管理等。

用例图如下:

图2-18系统前台用例图

前台功能需求:

(1)管理员管理功能

当管理员具有超级管理员权限时。

才能对管理员进行相关操作。

(2)商品管理功能

管理员对商品或商品类别的增,删,改,查操作。

(3)用户管理功能

管理员对用户信息的查看,并对低信誉用户做停用操作。

(4)订单管理功能

管理员对已发货的订单添加已发货信息,并删除过期为付款订单。

(5)留言管理功能

管理员回复用户留言,并删除不合理的留言。

(6)管理员登陆功能

使用本地校验和服务器校验顾客的登陆信息。

提供验证码技术尽量减少非人为的登陆。

三系统总体设计

3.1总体设计的任务和设计原则

总体设计的任务就是从系统开发的角度出发,把系统按功能逐曾分割成层次结构,使每一部分完成简单的功能且各个部分之间又保持一定的关系,在这设计阶段,基于这个功能的层次结构把各个部分组合起来成为系统。

它包括:

1.采用某中设计方法,将一个负责的系统按功能划分成模块的层次结构。

2.确定每个模块的功能,建立与已确定的软件需求的对应关系。

3.确定模块间的调用关系。

4.确定模块间的接口,即模块间传递的信息。

设计接口的信息结构。

5.评估模块划分的质量及导出模块结构的规则。

3.2购物系统总功能模块的设计分析

经过前期的深入调查和研究,总结出该系统需要完成的一些具体功能模块,分析如下图:

图3-1总功能模块图

四数据库设计

数据库设计是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

系统数据库表的基本设计

在建设网站系统之前,我们必须对系统所用到的数据进行大致的分类和具体的结构设计,既要做到清晰明了,又要能适应系统各项功能的调用,而不至于产生结构上的逻辑混乱,保证关键数据在意外情况下不会被破坏,可以说数据库是系统的重中之重。

数据库设计要遵循一些规则,一个好的数据库满足一些严格的约束和要求。

尽量分离各实体对应的表,一个实体对应一个表,搞清楚该实体有哪些属性,对应有些什么字段,以及各实体之间有何种联系。

实体、属性与联系是进行概念设计时要考虑的三个元素,也是一个好的数据库设计的核心。

从实际出发,经过仔细地设计,得到各表的设计.(选用MySQL数据库)

(1)管理员信息表

表4-1管理员信息表

字段名

数据类型

约束

描述

id

bigint

primarykey

编号,自动编码

name

varchar(255)

uniquekeynotnull

管理员账号

password

varchar(255)

notnull

管理员密码

建表SQL语句:

createtableshop_admin(

idbigintprimarykeyauto_increment,

namevarchar(255)notnull,

passwordvarchar(255)notnull);

(2)用户信息表

表4-2用户信息表

字段名

数据类型

约束

描述

id

bigint

primarykey

编号,自动编码

username

varchar(255)

uniquekeynotnull

用户名

password

varchar(255)

notnull

用户密码

realityname

varchar(255)

notnull

用户真实姓名

sex

bit

notnull

性别

address

varchar(255)

notnull

收货地址

zipcode

varchar(255)

notnull

邮政编码

email

varchar(255)

notnull

电子邮箱

mobilephone

varchar(255)

notnull

联系电话

question

varchar(255)

notnull

密码安全问题

answer

varchar(255)

Notnull

答案

int

notnull

信誉

state

bit

notnull

状态

建表SQL语句:

createtableshop_user(

idbigintprimarykeyauto_increment,

usernamevarchar(255)notnulluniquekey,

passwordvarchar(255)notnull,

realitynamevarchar(255)notnull,

sexbitnotnull,

addressvarchar(255)notnull,

zipcodevarchar(255)notnull,

emailvarchar(255)notnull,

mobilephonevarchar(255)notnull,

questionvarchar(255)notnull,

answervarchar(255)notnull,

statebitnotnull);

(3)商品类别信息表

表4-3商品类别信息表

字段名

数据类型

约束

描述

id

bigint

primarykey

编号,自动编码

name

varchar(255)

uniquekeynotnull

类别名

fulei

varchar(255)

notnull

父类

state

bit

notnull

状态

建表SQL语句:

createtableshop_producttype(

idbigint(20)primarykeyauto_increment,

namevarchar(255)notnulluniquekey,

fuleivarchar(255)notnull,

statebitnotnull);

(4)商品信息表

表4-4商品信息表

字段名

数据类型

约束

描述

id

bigint

primarykey

编号,自动编码

name

varchar(255)

uniquekeynotnull

商品名

type_id

bigint

referencesshop_producttype(id)

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

当前位置:首页 > 解决方案 > 学习计划

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

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