一、概述

  本批发平台是一个基于互联网,采用B2C模式。本平台在开发设计过程中参考了国内现有的网上货物批发平台,不但可以扩大商户与生产商的收益,而且可以在预测中减少生产者销售者及平台的风险,同时使三方受益。在本系统中,用户可以进行资料修改、注册,购物车管理等功能,管理员可以实现价格预测、用户信息管理、商品管理等功能。在设计上,本平台采用B/S三层结构,在页面设计上采用了现行主流的JSP技术,在考虑到安全性和代码可重用性后,决定采用用JavaBean对程序的代码进行封装。在数据库方面,选择更为轻便且免费的Mysql数据库。价格预测模块采用多元线性回归分析,从历年各因素对价格影响出发,确定影响因子。

二、项目设计及开发方案

 

1.设计目标

本平台使用现行最为广泛的的JSP+MYSQL架构,同时使用机器学习模型实现。本平台像大多数电商平台一样,具有前端和后台。前端即具有良好交互操作的页面,用户可以在其中进行商品选购,商品查询,账户服务,购物车服务等功能。后台即只有管理员可以访问的页面,管理员可以在其中进行商品添加,用户管理,价格预测,分配采购等功能。本设计可以使得双方更加便捷的进行操作,在提供给消费者方便的同时,也方便管理员维护商品的定价及广告的投放,提高其效率。

2.设计规则

该平台也有一定的设计规则,其规则有:

(1)   实用性:该平台具有一般的电商平台的功能,同时具有价格预测功能,具有一定的实用性。

(2)   针对性:该平台针对批发定向设计,具有很强的针对性

(3)   简单性:在实现批发功能的同时,也要使得用户及管理员操作更加简便。

3.开发技术的选择

我们需要选择最为合适的技术使得系统的开发更加的高效快速,同时作为信息技术初学者,我们所选用的技术应具有大量参考资源。

在进行比较之后,得出出JSP对于本批发平台更加合适,尤其它在安全性和跨平台性等方面有较其他两种有明显的优势。所以,我决定选用基于Java的JSP作为本系统的开发技术。

4.系统平台主要架构及开发模式

使用什么样的架构,对于一个系统来说是非常重要的。架构就好像一个系统的骨骼。参考现行的类似网络商城的架构,我们决定采用B/S,一种基于浏览器的架构。其优势在于可以充分的考虑和满足大量的访问与操作。同时,其作为现行主流技术,可有大量的参考资源。其原理在于使得大量的数据处理工作在服务器端进行处理,减轻了用户端的负载,使得用户只需要一个浏览器便可以在本平台进行一定的消费。在便于管理的同时,又方便了客户。同时JAVA可以更好的处理后台,J2EE规范也更加使得开发流程清晰、安全,使得开发层次更为清晰

5.基于B/S的体系结构

B/S架构即浏览器和服务器架构模式,使伴随着信息技术的发展,技术人员对C/S架构进行的改进之后的技术。在这种架构下,用户只需要浏览器便可进行操作,极少部分事务在前端实现,主要事务逻辑在服务器端实现。

 

 

图1.1 B/S三层架构示意图

这种结构使得用户仅需要极少的资源,便可进行高效率的访问。使得其不需要高端的硬件设备,同时也不需要更新和维护自身的设备,仅需要高速的网络便可进行一系列操作。服务器端承担了几乎所有的事务逻辑操作,使得客户端十分“苗条轻便”,只考虑处理前端的交互事务,页面的显示部分,而将大量的计算负荷交予服务器。基本不需要维护客户端,维护人员仅需要关注对于服务器端的更新和维护。

同时,这三层结构之间具有相互独立性,这就大大降低了耦合性,使得维护更加方便。

6.基于MVC的应用开发模型

以往传统的web系统里,开发人员经常把数据逻辑、业务逻辑、表示逻辑混合,不利于调试,也不具备可扩展性。在需要扩展时,不能依赖已经有的应用和代码,只能重写,非常的繁琐,不符合现在网络的高速性和实时性。而MVC恰好可以对这些弊端进行改变,具有很多优势。

所以我们选择了MVC模式,不仅可以具有更低的耦合性,即多层分离互不干扰,而且具有高重用性和可适用性。

  

图1.2应用服务器之上采用MVC开发的逻辑示意图

 

图1.3  MVC业务流程示意图

 7.数据库设计

本系统数据库采用mysql数据库,为之设计了如下表:

用户消费信息数据表如表1-1所示:

表1-1用户消费信息数据表

列名

数据类型

数据长度[字节]

是否允许为空

键类型

id

int

0

主键

fid

varchar

20

 

username

varchar

20

 

pname

varchar

20

 

proprice

double

15

 

count

int

0

 

time

varchar

32

 

summoney

double

15

 

用户信息表记录了用户的各类信息及注册时间,用户信息表如表1-2所示:

表1-2用户信息数据表

列名

数据类型

数据长度[字节]

是否允许为空

键类型

username

varchar

20

主键

password

varchar

20

 

email

varchar

20

 

tel

varchar

20

 

address

varchar

20

 

sex

varchar

20

 

age

int

0

 

regtime

varchar

30

 

商品信息表记录了商品的各类属性,具体如表1-3所示:

 

表1-3商品信息数据表

列名

数据类型

数据长度[字节]

是否允许为空

键类型

pid

varchar

20

主键

pname

varchar

20

 

price

double

15

 

pcount

int

0

 

imgpath

varchar

80

 

支付信息用来进行用户支付核算,即记录下单信息等,如表1-4所示:

表1-4支付信息数据表

 

列名

数据类型

数据长度[字节]

是否允许为空

键类型

logid

varchar

20

主键

username

varchar

20

 

money

double

15

 

time

varchar

30

 

8.执行视图

 

 9.实现视图

DAO包

DAO包里面封装工程接口,用于满足用户的需求,实现代码的再处理。如下图所示:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DBC包

此包用来处理系统与数据库链接。如下图所示:

 

 

Impl包

此包用于实现DAO包中接口,用于完成操作现有的数据库。如下图所示:

 

 9.分解视图

 

 

 10.依赖视图

 

 11.软件运行环境及技术选型

软件环境:windows10,JDK8,MATLAB,python2.7

开发环境:IDEA

前端:HTML,CSS,JQuery

数据库:mysql

12.概念模型的核心工作机制

用户通过注册和登录进入页面,对商品进行检索,添加购物车,进行支付操作

管理员通过管理员账户登入后台,查看价格预测,对商品进行添加及定价管理。检查库存管理是否出错。

 

版权声明:本文为lmz-000原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/lmz-000/p/14210969.html