基于MVC模式的客户关系管理系统.docx

上传人:b****8 文档编号:9303897 上传时间:2023-02-04 格式:DOCX 页数:15 大小:133.37KB
下载 相关 举报
基于MVC模式的客户关系管理系统.docx_第1页
第1页 / 共15页
基于MVC模式的客户关系管理系统.docx_第2页
第2页 / 共15页
基于MVC模式的客户关系管理系统.docx_第3页
第3页 / 共15页
基于MVC模式的客户关系管理系统.docx_第4页
第4页 / 共15页
基于MVC模式的客户关系管理系统.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

基于MVC模式的客户关系管理系统.docx

《基于MVC模式的客户关系管理系统.docx》由会员分享,可在线阅读,更多相关《基于MVC模式的客户关系管理系统.docx(15页珍藏版)》请在冰豆网上搜索。

基于MVC模式的客户关系管理系统.docx

基于MVC模式的客户关系管理系统

郑州轻工业学院

实训报告

 

实训名称:

基于MVC模式的客户关系管理系统

 

姓名:

院(系):

软件学院

专业班级:

软件工程

学号:

指导教师:

 

成绩:

时间:

年月日至年月日

目录

第一章实训目的1

第二章实训内容2

2.1项目分析2

2.1.1项目背景意义分析2

2.1.2项目需求分析2

2.2项目设计3

2.2.1项目功能设计3

2.2.2系统结构设计3

2.2.3系统数据库设计4

2.3项目实现7

2.3.1系统功能实现7

2.3.2系统结构实现9

2.3.3系统数据库实现11

第三章实训总结与心得14

第一章实训目的

本次实训的主要目的是通过实现一个基于MVC模式的客户关系管理系统来熟练本学期所学习的知识。

通过自己的实际操作动手来巩固、深入了解JSP的知识,将课堂上所学习的内容应用到实际中。

通过此次实训来锻炼自己发现问题解决问题的能力,提高自己对编程的认识,提高自己的动手能力,达到最终提高自己的目的。

第二章实训内容

2.1项目分析

2.1.1项目背景意义分析

计算机科学和网络的发展给人们的经济生活带来了很大的变化,人们的生活也越来越离不开计算机和网络了。

以往某个公司或者企业根本没有特意的管理客户信息维护客户关系的意识,现在企业管理越来越科学,越来越系统化,这样不仅能和有实际生意往来客户保持良好的关系还可以发掘潜在的客户,扩大自己的客户网。

而通过计算机结合网络来管理这种客户信息管理客户关系,不仅能有条不紊简洁高效的进行管理,而且借助网络的实时性、便捷性还可以达到随时随地进行管理的目的,不受时间地点的限制。

本次实训就是基于MVC模式设计通过JSP技术实现一个WEB端的客户关系管理系统。

通过此系统可以管理查询客户信息、员工信息、合同信息、产品信息、售后信息等。

同时作为客户关系管理系统的特色,本系统还可以通过分析客户的来源、消费的金额来确定客户的级别、确定客户的重要性或者计算客户由潜在客户发展为实际客户的可能性。

本系统还可以通过添加竞争对手的信息来分析确定对手对自己的威胁大小,并可按照威胁程度进行进一步的分析。

2.1.2项目需求分析

本系统主要是用于客户管理的客户关系管理系统即CRM系统,各部门经理或总经理可以通过本系统进行合同、售后、产品等的管理,还可以对竞争对手进行分析该系统可以大大的提高工作的效率,由于采用B/S模式实现还可以满足时时办公的需求。

系统可以对客户信息、产品、售后、员工等进行一般的管理,所以要求系统有最基本的添加、删除、修改和查询这些信息的功能,以实现最基本的信息管理。

系统还可以通过添加竞争对手的信息来从各个方面分析竞争对手的威胁程度,并将之分类,不仅可以有效的了解竞争对手的基本情况还可以根据对手的威胁程度采取对应的措施,做到应对先急后缓有的放矢最大化的提高自己的竞争力扩大自己的利益。

在最重要的客户关系管理方面系统同样可以对已有的客户进行分级,这样不仅可以维护与重要客户之间的关系而且还可以发掘潜在的客户,将那些有可能发展成为自己客户展、开业务的关系进行培养,最终达到扩展自己客户群、维护自己关系网的目的。

2.2项目设计

2.2.1项目功能设计

为保证系统的安全性要有登录功能,只有在输入正确的用户名和密码后才会进入系统否则不能使用系统。

系统可以自动根据账号的级别赋予账号相应的权力,使用相应的功能。

系统不提供注册功能,只有通过超级管理员将需要使用系统的人员的账号添加进入系统并配置相应的权限,否则不能使用系统。

为满足项目需求,整个系统功能主要分为客户管理、员工管理、合同管理、产品管理和售后管理等几大部分,另外还有客户分析和竞争对手分析等功能。

其中客户管理主要包括客户信息的添加修改删除、查看检索客户信息和客户提醒;员工管理包括员工信息的添加、修改、删除和员工业绩的分析统计;合同管理包括合同信息的添加、修改和查询;产品管理包括产品信息的添加、修改、删除和查询;售后管理包括售后信息的添加、修改和查询等功能。

在客户分析功能中可以分别根据客户的来源和客户的资金数量来分析客户的重要程度,还可以将当前的客户根据重要程度分为几个级别在客户数量功能中分别显示出来。

在竞争对手分析功能中可以添加、修改和删除竞争对手信息。

并且可以随时查询竞争对手的信息。

还可以通过各种数据来分析竞争对手的威胁级别并进行进一步的分析。

2.2.2系统结构设计

系统为保证安全性需要使用账号密码登录,登录后根据登录员工的权限赋予不同的系统使用功能。

超级管理员具有控制系统的完全权限包括添加修改用户等,普通用户只有其他数据的添加修改和查询等权限,普通用户不能注册,只有使用超级管理员添加。

系统各功能之间的关系如下图所示。

 

图2-1系统功能结构

2.2.3系统数据库设计

在现在这个时代,数据的重要性不言而喻,本系统归根结底就是对数据的管理和处理。

一个系统是否高效在很大程度上取决于对数据的处理上,所以一个好的数据库设计是很有必要的。

本系统主要如下几个表用来存放数据,数据库名为CRM。

user表用来存放员工信息,contact表用来存放合同信息,leaseback表用来存放售后服务信息,client表用来存放客户信息,rival表用来存放竞争对手的信息,product用来存放产品信息。

主要数据表的详细设计如下表所示。

表2-1数据表client详细设计

数据表名

字段名

字段类型

字段属性

client

clientid

varchar(10)

客户ID号,主键

clientName

varchar(20)

客户名称

clientType

varchar(10)

客户类型

clientPhone

varchar(20)

客户电话

clienEmail

varchar(30)

客户电子邮件地址

clientAddress

varchar(40)

客户地址

clientUrl

varchar(30)

客户主页

clientBirthday

varchar(20)

客户生日

kehulaiyuan

varchar(50)

客户来源

genjinchengxu

varchar(50)

跟进程度

username

varchar(20)

员工名称

表2-2数据表product详细设计

数据表名

字段名

字段类型

属性

product

productid

int(10)

主键,产品型号

productName

varchar(20)

产品名称

description

varchar(50)

产品描述

price

varchar(50)

产品价格

type

varchar(20)

产品类型

表2-3数据表contact详细设计

数据表名

字段名

字段类型

属性

contact

contactid

varchar(15)

主键,合同号

clientName

varchar(20)

客户名称

username

varchar(20)

员工名称

startData

varchar(20)

开始日期

stopData

varchar(20)

结束日期

theme

varchar(20)

合同主题

contant

varchar(100)

合同内容

表2-4数据表leaseback详细设计

数据表名

字段名

字段类型

属性

leaseback

afterid

varchar(15)

主键,售后号

clientName

varchar(20)

客户名称

username

varchar(15)

员工名称

feedback

varchar(50)

反馈信息

表2-5数据表rival详细设计

数据表名

字段名

字段类型

属性

rival

rivalid

int(50)

主键,竞争对手编号

rivalName

varchar(10)

竞争对手名称

threatLevel

varchar(20)

威胁级别

area

varchar(20)

所在区域

url

varchar(30)

主页

information

varchar(50)

对手信息

strength

varchar(50)

对手优势

表2-6数据表user详细设计

数据表名

字段名

字段类型

属性

user

id

int(50)

主键,员工编号

username

varchar(20)

员工姓名

password

varchar(20)

员工密码

authority

varchar(50)

员工权限

2.3项目实现

2.3.1系统功能实现

系统的每个功能都由相对应的类来实现。

系统的实现遵循MVC设计模式,即将业务逻辑、表示和控制分开编写,这样有助于代码的实现和维护。

其中业务逻辑层主要用来处理一系列的数据,表示层主要负责系统界面的显示和与用户的交互,控制层主要处理用户的动作如提交修改数据等。

本系统中业务逻辑层主要由JavaBean实现,而控制层主要由Servlet实现。

当用户请求从表现层传过来时Servlet将请求转发给JavaBean处理,处理完成后JavaBean又将结果回传给Servlet,后者再将处理的结果传给表现层显示出来。

本系统JavaBean主要有clientBean和userBean。

clientBean主要方法及其作用如下表所示。

表2-7clienBean的详细设计

方法名

返回值

作用

getClientName

String

得到储存在Bean中的客户名称并返回得到的值

setClientName

得到输入的客户名称并保存在Bean中

getUsername

String

得到储存在Bean中的员工名称并返回得到的值

setUsername

得到输入的员工名称并保存在Bean中

getId

Integer

得到储存在Bean中的客户ID并返回得到的值

setId

得到输入的客户ID并保存在Bean中

getAuthority

String

得到保存在Bean中的用户权限并返回得到的值

setAuthority

得到输入的用户权限并保存在Bean中

userBean的主要方法及其作用如下表所示。

表2-8userBean的详细设计

方法名

返回值

作用

getUsername

String

得到储存在Bean中的员工名称并返回得到的值

setUsername

得到输入的员工名称并保存在Bean中

getPassword

String

得到储存在Bean中的员工密码并返回得到的值

setPassword

得到输入的员工密码并保存在Bean中

getAuthority

String

得到储存在Bean中的员工权限并返回得到的值

setAuthority

得到输入的员工权限并保存在Bean中

本系统的Servlet及其属性和作用如下表所示。

表2-9系统主要Servlet名称记起主要作用

Servlet名称

Servlet作用

client_Servlet

在添加客户功能中负责提交添加的数据,并接收返回的结果

competitor_Servlet

在添加竞争对手功能中负责提交添加的数据,并接收返回的结果

competitorxiugai_Servlet

在修改竞争对手功能中负责提交修改的数据,并接收返回的结果

contract_Servlet

在添加合同功能中负责提交添加的数据,并接收返回的结果

findClient

在查找客户功能中负责提交搜索关键字,并接收搜索的结果

leaseback_Servlet

在添加售后功能中负责提交添加的数据,并接收返回的结果

leasebackxiugai_Servlet

在修改售后功能中负责提交添加的数据,并接收返回的结果

login_Servlet

在登录功能中负责提交需要验证的登录信息,并接收反悔的结果

product_Servlet

在添加产品功能中负责提交添加的数据,并接收返回的结果

productxiugai_Servlet

在修改产品功能中负责提交添加的数据,并接收返回的结果

user_Servlet

在添加员工功能中负责提交添加的数据,并接收返回的结果

userxiugai_Servlet

在修改员工功能中负责提交添加的数据,并接收返回的结果

xiugai_Servlet

在修改客户功能中负责提交添加的数据,并接收返回的结果

此外与数据库的连接等主要由一个数据库连接类DBConnection来实现,这个类的主要属性如下表所示。

表2-10系统数据库连接类详细设计

方法名称

返回值

方法作用

getConnection

建立与数据库的连接

executeQuery

ResultSet

执行查询语句,返回包含查询结果的数据集

executeUpdate

int

执行更新数据库的SQL语句

close

关闭与数据库的连接

2.3.2系统结构实现

系统的功能主要都由Java类来实现,各个功能之间和类之间的调用关系可由下图表示。

登录功能由login_Servlet来处理,主要实现方式如下图所示。

 

图2-2登录功能流程

添加数据的基本流程差不多是一样的,不管是添加用户还是添加客户、产品等只是所要添加的数据表不一样。

处理添加数据的Servlet有client_Servlet、competitor_Servlet、contract_Servlet、leaseback_Servlet、product_Servlet、user_Servlet。

添加数据的过程如下图所示。

 

图2-3添加数据功能实现

所有修改数据的基本处理流程大致相同,不管是用户信息的修改还是产品、客户信息的修改其处理流程都是用户输入的数据在提交后交由处理修改数据的Servlet处理,系统处理修改数据的Servlet有xiugai_Servlet、userxiugai_Servlet、productxiugai_Servlet、leasebackxiugai_Servlet、competitorxiugai_Servlet。

其基本的处理流程如下图所示。

 

图2-4修改数据功能实现

本系统还提供客户信息的查询,查询功能由findClient来处理实现,可由。

其基本处理流程如下图所示。

 

 

图2-5查询客户信息功能实现

2.3.3系统数据库实现

本系统数据库使用MySQL,按照之前的设计建立数据库的主要代码如下。

实现存放客户信息的数据表代码如下。

CREATETABLEclient(

clientidvarchar(10)PRIMARYKEY,

clientNamevarchar(20),

clientTypevarchar(10),

clientPhonevarchar(20),

clienEmailvarchar(30),

clientAddressvarchar(40),

clientUrlvarchar(30),

clientBirthdayvarchar(20),

kehulaiyuanvarchar(50),

genjinchengxu`varchar(50),

usernamevarchar(20)

实现存放合同信息的数据表代码如下。

CREATETABLEcontact(

contactidvarchar(15)PRIMARYKEY,

clientNamevarchar(20),

usernamevarchar(20),

startDatavarchar(20),

stopDatavarchar(20),

themevarchar(20),

contantvarchar(100)

实现存放售后信息的数据表代码如下。

CREATETABLEleaseback(

afteridvarchar(15)PRIMARYKEY,

clientNamevarchar(20),

usernamevarchar(15),

feedbackvarchar(50)

实现存放产品信息的数据表代码如下。

CREATETABLEproduct(

productidint(10)PRIMARYKEYauto_increment,

productNamevarchar(20),

descriptionvarchar(50),

pricevarchar(50),

typevarchar(20)

实现存放竞争对手信息的数据表代码如下。

CREATETABLErival(

rivalidint(50)PRIMARYKEYauto_increment,

rivalName`varchar(10),

threatLevel`varchar(20),

area`varchar(20),

url`varchar(30),

informationvarchar(50),

strengthvarchar(50)

实现存放员工信息的数据表代码如下。

CREATETABLEuser(

idint(50)PRIMARYKEYauto_increment,

usernamevarchar(20),

passwordvarchar(20),

authorityvarchar(50)

第三章实训总结与心得

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

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

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

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