JSP+mysql电子购物商城1绪论 11.1 开发背景 11.2 系统简介 12系统分析 32.1可行性分析 32.2管理职能分析 42.3业务流程分析 52.4数据流程分析 63系统设计 103.1功能结构图设计 103.2用户界面设计 103.3代码设计 123.5系统物理配置方案设计 184系统实现 194.1 功能模块的实现87
JSP mysql电子购物商城
1绪论
1.1 开发背景
近年来,随着Internet的迅速崛起,电子商务开始流行起来。网上订购系统作为B2B(Business to Business,即企业对企业),B2C(Business to Customer,即企业对消费者),C2C(Customer toCustomer,即消费者对消者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。网上购物是一种具有交互功能的商业信息系统。它向用户提静态和动态两类信息资源。所谓静态信息是指那些不经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。
1.2 系统简介
1.2.1 Web平台的体系结构
Web平台的三层分布式体系结构为下图
图1.1 Web平台的三层分布式体系结构若图片无法显示请联系QQ3710167,JSP+mysql电子购物商城系统免费,转发请注明源于www.lwfree.cn
三层分布式体系结构的第一层是客户端表示层、客户层 仅仅是整个应用系统的图形界面表示;处于第二层的应用服务层,有一台或多台服务器组成,其中Web服务器主要负责对客户端应用程序的集中管理,应用服务器(Application Server)主要负责应用逻辑的集中管理,即事务处理;处于第三层的是数据中心层,有数据库系统,主要负责数据的存储和组织、数据库的分布式管理、数据库的备份和同步等等。
电子商务的应用可以看作一个客户与电子商务站点之间的一系列交互过程。整个交互过程从客户端所浏览的一个页面开始。用户单击该页面上的一个按钮或链接就产生一个请求,该请求通过HTTP传递到Web服务器上,Web服务器将页面中的请求及有关数据取出来传给应用服务器,应用服务器调用相关的商务逻辑,实际上是一个Web应用程序,进行相应的处理,从外部数据库服务器存取数据,然后将结果传回Web服务器,Web服务器再将数据结果转换为页面的形式传给浏览器,于是在客户端产生了新的页面。该页面是这一次请求的结果,也是下一次请求的开始。
1.2.2 Web服务器平台
在电子商务系统的开发中,Web服务器平台的选择是至关重要的,它包括Web服务器操作系统和Web服务器软件,而Web服务器软件通常又决定了将采用什么样的操作系统。Web服务器平台决定了电子商务网站的可靠性、对客户的服务能力,以及为了维持网站运行所需要付出的代价。只有选择了正确的产品以及作 出相应正确的设计,电子商务系统才可以成为商家和顾客之间进行沟通的良好途径。
本系统采用的是Tomcat服务器,Tomcat服务器是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、SUN 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现, Tomcat支持最新的Servlet 2.4 和JSP 2.0 规范。Tomcat运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,它的配置和开发都比较容易,很适合中小企业开发B2C型的电子商务系统。
1.2.3 Web平台系统的开发方法
本系统主要运用了系统开发生命周期法(System Development Life Cycle 简称SDLC)和结构化方法(Structured Approach)来阐述该系统的开发过程,经过系统规划、系统分析 、系统设计、系统实施及系统维护逐步完成系统各功能的实现,将计算机作为管理决策的支持手段,融入日常业务的各个环节,使得管理更加规范,同时也能够更好的为顾客服务,该系统大大提高了工作效率,为公司带来了更好的社会效益和经济效益。
2系统分析
2.1可行性分析
建设Web平台系统的必要性取决于需求的迫切性和实现的可能性。可行性并不等于可能性,它还包括必要性,如果领导或管理人员对信息的需求并不迫切或各方面的条件不具备,就是不具备可行性。
可行性研究是系统开发阶段的第二项活动。它是对系统进行全面、概要的分析。在本阶段可以从技术、经济和管理三个方面对电子购物商城系统的可行性进行分析研究,从而为确定项目开发决策提供科学依据。
2.1.1 技术可行性
由于公司购置建立网络中心所需的网络设备和软件,并配备系统管理员,负责整个系统的维护管理工作,具备了开发Web平台系统的基本条件。
为了今后的系统维护,公司准备联合具有丰富经验的软件开发人员共同研究,这为今后系统的顺利开发提供了有力的技术条件。
2.1.2 经济可行性
目前,公司的管理工作和服务工作存在盲目性、随意性、和无效消耗,不能保证营销部门的工作质量,影响商品的销售,给公司带来实际的和潜在的经济损失。虽然系统开发初期投资较大,但是,若开发成功本系统,将有助于公司更好地预测市场,更好的开发客户及时调整经营销售策略,在激烈的市场竞争中把握主动。因此,从长远利益考虑,本项目若能开发成功,它所带来的效益将远高于系统投入。
2.1.3 营运可行性
在公司的业务方面,由于日常信息处理量大,耗费时间长,出错效率高,在系统投入运行后,可以实现业务中的信息集中处理、分析利用信息和信息的交流辅助公司的业务监管和重大决定。并且可以实现公司进一步向网络服务发展,为信息工作打下良好的基础。
人员方面公司现有的员工中,其中60%以上具有IT专业技术职称,他们掌握的计算机技术,在这样的企业队伍中推行信息化建设可以达到事半功倍的效果。
JSP+mysql电子购物商城
电子购物商城建立后,可以改善公司的运营结构和作业方式,使之能适应信息化的发展战略和将来的行业竞争,同时提高公司员工的信息化意识,使公司能在将来的发展过程中不断壮大。
通过以上的研究和分析,认为系统开发所产生的效益将大于投入,所以开发本项目是可行的、必要的。
2.2管理职能分析
通过与公司各级工作人员进行交流,并参观其业务活动,对其组织结构进行分析,了解到公司下设行政事业部、财务部、营销中心等3个部门。其中电子购物商城,市场部,企划部,质检部,售后支持部,每个部门由均配备部门经理,公司组织机构图如下图所示:若图片无法显示请联系QQ3710167,JSP+mysql电子购物商城系统免费,转发请注明源于www.lwfree.cn
图2.1公司组织机构图
各部门岗位的主要职能如下:
1、财务部:负责公司全面的财务管理及监督相关税务
2、行政事业部:是公司全面日常管理工作的组织协调、综合管理部门,并负责公司人事、行政、后勤的管理。
3、营销中心:是公司的营销方面的参谋和执行机构。内容包括:营销策划、市场计划管理和产品调配、广告策划及宣传、对客户的管理,信息及反馈。
4、企划部:营销计划及任务安排,广告策划,市场动态分析,组织促销活动,业务预警等。
5、售后支持部:对所售商品,进行安装指导,客户使用过程中的信息反馈,并将商品质量意见反馈各有关部门。
6、市场推广部:负责公司商品和企业形象的宣传和推广工作。
7、质检部:按照国家质量管理要求对公司商品进行全面质量检测,达到最终合格。
8、电子购物商城:负责网上商城的管理和运行工作。
2.3业务流程分析
为了弄清各部门的信息处理工作,哪些与系统建设有关,哪些与系统建设无关,就必须了解组织的业务流程。按业务活动中信息流动过程,逐个调查所有环节的处理业务、处理内容、处理顺序和对处理时间的要求,弄清楚各环节需要的信息内容、信息来源、去向和处理方法,提供信息的时间和信息形态等有关调查情况并用下图表示:
图2.2业务流程图
2.4数据流程分析
为了建立一个满足用户需求的管理信息系统,系统分析人员应在深入调查、详细占有资料的基础上,集中分析管理活动中信息运动的规律和存在的问题,研究如何改善信息流的运动,满足用户管理决策活动中的信息需求。因此要对调查材料进行加工、提炼、抽出其中之反映企业信息运动规律的部分,把用户的需求“翻译”成对信息处理功能的需求,以建立系统的逻辑模型。
数据流图是在对业务流程图进行分析的基础上,从系统的科学性、管理的合理性、实际运行的可行性角度出发,将信息处理功能和彼此之间的联系自顶向下、逐层分解,从逻辑上精确的描述新系统具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向。
电子购物商城的顶级数据流程图如下所示:
图2.4系统顶级数据流程图
顶级数据流程图又可详细分解,如图2.5
JSP+mysql电子购物商城
图2.5销售订货数据流程图
F1、订货要求 F2、订货要求 F3、产品价格 F4、订金收据 F5、修改订货要求F6、订货修改记录 F7、收取货款记录 F8、订货产品明细 F9、订货客户咨询记录F10、订货客户记录、F11确定订货、F12订单统计表
2.5数据字典
数据字典描述的主要内容有:数据流、数据元素、数据存储、加工和外部项,其中数据元素是组成数据流的基本成分。在系统分析中,数据字典起着重要的作用。它包含关于系统详细信息。一般说来,系统分析人员把不便在数据流图上注明而对于系统分析应该获得,对整个系统开发必需的信息,尽可能放入数据字典,部分数据字典如下所示:
数据流
系统名:销售订货 编号: F1
条目名:订货公司 别名:
来源: 客户
去处:P1接收订货信息
数据流结构:
合同编号+客户名称+签订日期+商品型号+数量+单价+总价+供货日期
+付款情况+签订人员+备注
简要说明:营销人员根据客户要求签订订货合同,随时了解合同付款情况。
表2.7数据字典:数据流
数据元素
系统名:销售订货 编号: F1
条目名:签订日期 别名:
所属数据流:F1订货要求
存储处:订货客户记录
数据流结构:
合同编号+客户名称+签订日期+商品型号+数量+单价+总价+供货日期
+付款情况+签订人员+备注
简要说明:由营销人员填写订货合同。
表2.8数据字典:数据元素
数据存储
系统名:销售订货 编号: D2
条目名:订货客户记录 别名:
存储组织:订货客户记录
记录数:
数据量:
主键:客户编号
副键:
记录组成:
合同编号、客户名称、签订日期、商品型号、数量、单价、总价、供货日期、付款情况、签订人员、备注
简要说明:营销人员根据订货客户记录为客户准备商品。
表2.9数据字典:数据存储
加 工
系统名:销售订货 编号:P1
条目名:确定价格 别名:
输入:客户订货要求
输出:价格和订货客户记录
处理逻辑:
1、营销人员根据客户要求,向客户介绍价格。
2、如果是再次订货客户,应按原有下浮折扣点定价格。
3、第一次接触新客户,根据是否是直接用户介绍价格。
4、根据客户采购用量大小,掌握价格下浮程度。
5、根据客户付款方式的差别,掌握价格确定最终成交价格。
简要说明:营销人员根据市场价格和有关优惠政策介绍价格。
表3.10 数据字典:加工
外部项
系统名:销售订货 编号:P2
条目名:客户资料 别名:
输入数据流:
输出数据流:
主要特征:
客户编号、客户名称、所在省、电话区号、联系电话、传真、联系人、手机、地址、邮编、跟踪业务员、客户性质、备注
简要说明:客户的基本情况。
表3.11 数据字典:外部项若图片无法显示请联系QQ3710167,JSP+mysql电子购物商城系统免费,转发请注明源于www.lwfree.cn
3系统设计
3.1功能结构图设计
图3.1 网站整体框架图
3.2用户界面设计
目前,界面设计已成为评价软件质量的一条重要指标,一个计算机系统的成功与否,很大程度上取决于用户使用人机界面、人机对话的体验或感受。所谓用户界面是指软件系统与用户交互的接口,也是控制和选择信息输入输出的主要途径,通常包括输入、输出、人机对话的界面与方式等。用户界面设计应坚持友好、简便、实用、易于操作的原则,尽量避免过于烦琐和花哨。
1、输入设计
输入数据的正确性对于整个系统质量的好坏具有决定性的意义,输入设计不当有可能使数据发生错误,这时,所使用的计算和处理十分正确,也不能得到可靠的输出信息。因此,输入设计必须考虑周全,尽量使出错率降到最低。
JSP+mysql电子购物商城
2、输出设计
系统设计的过程正好和实际实施过程相反,并不是从输入设计到输出设计,而是从输出设计到输入设计,这是因为输出表格直接与使用者相联系,设计的出发点应当是保证输出表格方便的为使用者服务,正确及时的反映和组成用户生产和服务部门的有用信息。
3、人-机对话设计
人-机对话主要是指在计算机程序运行中,使用者与计算机系统之间通过终端屏幕或其他装置进行一系列交替的询问与回答。对话设计的任务是与用户共同的确定对话方式、内容与具体格式。
信息的输入主要采用手工操作方式,以键盘、鼠标作为输入设备,输出设备采用显示终端、打印机、以及纸张、磁盘作为输出介质。
本系统采用了基于B/S结构的菜单选择、填写表格和简单提示等友好的人机交互方式,如下图所示:
图3.2系统基本用户界面
3.3代码设计
代码,是用来表示的客观事物的实体类型,以及属性的一个或一组易于计算机识别和处理的特定符号或记号,它可以是字符、数字、某些特殊符号或它们的组合,它可以起到表示、统计、检索和随想状态的描述的作用。
代码是代表系统中客观存在的事物名称、属性或状态的符号。由于现代管理活动中产生的数据量大,所需要的信息种类也很多,为了满足各种管理职能和各个管理层次对信息的需求,必须经过分类整理后才能更有效的利用。代码设计就是信息分类的具体表现,将系统中具有某些共同属性或特征的信息归并到一起。用一些便于计算机或人来识别和处理的符号来表示各种信息。
代码设计实际是一个科学管理的问题。设计出一个好的代码方案,对于系统的开发工作极为有利,它使许多处理工作变得十分方便,通过对数据库以及彼此之间的联系进行分析,对所有数据库文件中的主码和外码的构成进行分析。数据元素的代码设计主要应用符合码和助忆码的设计方法。
为了编程是方便记忆,本系统均采用英文缩写,作为该项的代码。例如:“ProductInfo”表示商品信息表,“ProductID”表示商品编号,“ProductName”表示商品名称。
3.4数据库设计
本系统共涉及到5个表,其主要设计思想:
(1)尽管在需求分析中,商品类别仅仅是商品的一个属性,但数据库设计中一般将其分离出去创建单独的表。事实上,这是一种面向对象的思想,这种做法有利于系统的扩展,例如商城的管理者将要拓宽业务、推出某种新类型的商品早,这样的设计将令其变得异常容易。
(2)由于订单可能包括多种商品,而且数量不一,所以用两个表来共同体现订单这个实体。
根据上述分析可对应的实体-关系图如下:如图3.4所示用户和商品、订单之间的局部ER图,图3.5所示商品、订单和购物车之间的局部ER图:
JSP+mysql电子购物商城
图3.11管理员信息表实体-属性图
在本系统中数据库具体表结构的设计:
(1)顾客基本信息表 User
顾客信息表用来记录用户的一些基本信息,其结构如下表所示:
编号
字段名称
数据类型
说明
1
UserID
Int
用户ID(主键)
2
UserName
Nvarchar(50)
用户登录名
3
Password
Nvarchar(50)
用户密码
4
UserRealName
Nvarchar(50)
用户真实姓名
5
Address
Nvarchar(50)
地址
6
Email
Nvarchar(50)
电子邮件
(2)商品信息表 Product
商品信息表表示商品的基本信息,如下表所示:
编号
字段名称
数据类型
说明
1
ProductID
Int
商品编号(主键)
2
ProductName
Nvarchar(50)
商品名称
3
ProductPrice
Decimal
价格
4
Intro
Nvarchar(50)
商品介绍
5
CategoryID
Int
所属分类编号
(3)商品分类表 Category
商品分类表用来表示商品类别信息。其结构如下表所示:
编号
字段名称
数据类型
说明
1
CategoryID
Int
商品分类ID(主键)
2
CategoryName
varchar(50)
分类名称
3
Cno
Int
分类编码
4
Grade
Int
分类等级
5
Pid
Int
与上级分类ID对应
(4)订单表 Orders
订单表保存每笔订单的基本信息。结构如下表所示:
编号
字段名称
数据类型
说明
1
OrderID
Int
订单号(主键)
2
UserID
Int
所属用户ID
3
OrderDate
DateTime
成交时间
4
Addr
Varchar(50)
送货地址
(5)订单详细信息表 OrderItems
订单详细信息表体现订单的细则,结构如下表所示:
编号
字段名称
数据类型
说明
1
OrderId
Int
所属订单号(主键)
2
ProductID
Int
商品ID(主键)
3
Quantity
Int
该商品的购买数量
4
UnitCost
Decimal
该商品的单价
(6)管理员信息表 Admin
与用户信息表类似,管理员信息表用来保存管理员的基本信息,如下表所示:
编号
字段名称
数据类型
说明
1
AdminID
Int
管理员ID
2
LoginName
Nvarchar(50)
管理员登录名
3
LoginPwd
Nvarchar(50)
管理员密码
要所数据的逻辑设计和物理设计,数据库中表与表之间的关系如图3.12所示:
JSP+mysql电子购物商城
图3.12 数据库设计图
3.5系统物理配置方案设计
利用公司已经架设好的企业局域网,主服务器采用:服务器、交换机、网络集线器,传输介质采用10M屏蔽双绞线为介质的星型网络拓扑结构,服务器作为系统功能实现和数据共享中心,应具有较好的性能和可靠性。在此基础上再配上一台提供web服务的服务器和一台SQL SERVER 2000数据库服务器即可实现对本系统的全部物理支持。
系统具体硬件配置如下:
1、WWW服务器:INTER P4 2.4 512M DDR ROM 80GB 硬盘。
2、数据库服务器:INTER P4 2.4 512M DDR ROM 80GB 硬盘。
3、客户机:目前流行的PC兼容机。
4、网络连接设备:路由器、交换机、打印机、扫描仪等。
系统具体软件配置如下:
1、操作系统:Microsoft公司WindowXP,网络协议采用TCP/IP协议,
客户机WindowXP。
2、WWW服务器:TomCat 5.5
3、数据库软件:MySQL 5.0
4系统实现
4.1 功能模块的实现
本系统由前台系统和后台管理系统系统组成。前台系统就是面向Internet上用户的网站。后台系统则是商店管理员对网站及其上的信息进行管理和维护的系统,也可以说是一个Intranet系统。
本系统的用户界面分为以下几个层次(实现代码见附录):
1、首页:是直接展示给电子购物商城( eshop)用户的部分,界面效果如图4.1所示:
图4.1 首页设计状态图以及界面效果
在这一模块中,主要包括以下自定义控件和页面的实现:
(1)页面头部控件:主要包括登录、购物车、帮助等页面的链接以及搜索框。
页面头部控件是为了方便用户快速导航到某个页面的,由于这是需要显示在每个页面上的模块,所以定义为用户控件是一种不错的解决方法。
在设计中,具有技巧性的地方是如何展示给登录用户和匿名用户不同的导航条,例如,匿名用户看到的导航链接有登录、购物车和帮助,而登录用户看到的则是注销、我的账户和帮助。如图4.2、4.3所示。
图4.2 登录用户导航条
(2)商品分类导航控件:显示所有商品的列表,作为页面的左侧导航目录,如图4.1所示。
该控件显示所有的商品分类,单击目录中某一个商品分类时将显示相应类别的商品列表页面。
(3)热门商品列表控件以及新到商品控件,如图4.1所示。
这两个控件的功能是在首页显示相应的商品列表,与商品分类导航控件类似,单击某一商品将显示相应商品详细信息页面。
2、商品信息模块共包含如下的页面:
(1)分类显示商品:分页显示某种类型的所有商品。
该控件分类显示相应的商品信息,商品信息包括每个商品的商品编号、商品名称、简单描述。商品订单的界面效果如图所示:图4.3 分类显示商品的界面效果
若图片无法显示请联系QQ3710167,JSP+mysql电子购物商城系统免费,转发请注明源于www.lwfree.cn
(2)商品详细信息:显示某个商品的详细信息。
这个页面将显示某一商品的详细信息。在电子商城中,商品的详细信息包括商品的名称、价格、简介以及浏览次数。商品详细信息的界面效果如图4.4所示:
JSP+mysql电子购物商城
(3)商品搜索结果:分页显示搜索结果。
在页面头部的搜索框中输入相应的关键词,提交之后,将在搜索页面显示出模糊查询的结果。例如,在搜索框输入“Office”,则显示出商品名称中包含“Office”的所有商品,并分页显示。实现效果如图4.5所示: 到第 页
图4.5 商品搜索结果的界面效果
3、购物车功能模块。
用户单击商品列表中“添加到购物车”的超级链接时,将进入购物车的功能页面。主要包括以下两个页面:
(1)添加到购物车:将选定商品添加到购物车记录中。
这个页面是一个中转页面。所谓中转的意思,就是它并不呈现给用户,但却实现一定的功能-将某种商品添加到操作用户的购物车内。
(2)购物车管理:对购物车内容进行管理。
该页面实现的功能比较多,包括购物车记录的绑定显示、修改购物车中商品的数量、删除购物车中的记录以及显示购物总额等。其界面效果如图4.6所示:图4.6 购物车管理的界面效果
(3)用户管理项导航目录:当进入用户管理页面时,左侧的目录应该显示为用户的管理项导航。
当用户进入用户管理(如修改密码、修改个人资料)页面时,左侧不应该再显示为商品分类导航目录,而应该列出用户管理菜单,界面如图4.7所示: 图4.7 用户管理项导航目录的界面
4、订单模块
订单模块包括的功能有支付购物车生成订单、查询个人订单信息和查询订单详细信息。涉及的页面有以下3个:
(1)结算购物车:
请确认您提交的购物记录是否正确
图4.8 结算购物车的界面
(2)查询个人订单列表
该页面显示用户订单列表,界面如图4.9所示。图4.9 查询个人订单列表的界面
5、后台管理模块
在项目设计中,考虑到安性和独立性,将后台管理模块单独作为一个Web项目,但同属电子商城解决方案。
查询销售情况
本模块的查询支持按月查询、按日查询。查询出的是每种商品的相关订单数、售出数量和销售收入。界面如图4.10所示: