基于java技术的客户关系管理系统毕业设计论文.docx

上传人:b****3 文档编号:27429803 上传时间:2023-06-30 格式:DOCX 页数:92 大小:9.29MB
下载 相关 举报
基于java技术的客户关系管理系统毕业设计论文.docx_第1页
第1页 / 共92页
基于java技术的客户关系管理系统毕业设计论文.docx_第2页
第2页 / 共92页
基于java技术的客户关系管理系统毕业设计论文.docx_第3页
第3页 / 共92页
基于java技术的客户关系管理系统毕业设计论文.docx_第4页
第4页 / 共92页
基于java技术的客户关系管理系统毕业设计论文.docx_第5页
第5页 / 共92页
点击查看更多>>
下载资源
资源描述

基于java技术的客户关系管理系统毕业设计论文.docx

《基于java技术的客户关系管理系统毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于java技术的客户关系管理系统毕业设计论文.docx(92页珍藏版)》请在冰豆网上搜索。

基于java技术的客户关系管理系统毕业设计论文.docx

基于java技术的客户关系管理系统毕业设计论文

 

滨江学院

毕业论文(设计)

题目基于JAVA技术的客户关系管理系统

院系滨江学院

专业电子信息工程

学生姓名

学号

指导教师

职称

 

二O一二年五月十一日

基于JAVA技术的客户关系管理系统

南京信息工程大学电子信息工程专业,南京210044

摘要:

该客户关系管理系统是基于J2EE技术进行开发,主要采用JAVA语言作为开发语言,基于MVC的设计思想,利用J2EE网页制作技术完成前台静态页面和动态页面的设计,同时利用JDBC技术完成前台页面和后台MySQL数据库的连接操作,最终完成一个客户关系管理系统。

该系统共分为营销管理、客户管理、服务管理和统计报表四个功能模块,系统可以帮助企业发掘并创建客户信息记录,对所有的客户进行有效的管理;按照客户的一些基本信息和业务信息进行分类,掌握老客户的基本动态和对公司的贡献等级,不断的发掘新的客户,同时对客户流失的原因进行了解,不断改进,帮助提高企业的经济效益。

关键词:

客户关系管理;J2EE;数据库;JAVA

1引言

随着经济的不断发展和企业的不断发展壮大,如何获取更大的消费市场、降低自己的生产成本以及获取更大的销售利润成为企业生存所面临的首要问题,客户在企业的发展中扮演了一个极其重要的角色,客户资源就是企业的宝贵财富,同时企业对于客户的依赖已经提高到了关乎企业生存的高度,而这些客户有分不同的客户群体,例如有小客户、大客户,而客户的等级对于企业发展的重要性也是不一样的,而且这些客户有可能来自不同的行业,不同的区域,必须对这些客户进行有效的管理;而且每个客户对企业的需求和要求也是不同的,只有尽可能的满足不同客户的不同需求,才能提高企业的核心竞争力,获取和创造利益的最大化。

在过去的10年当中,有许多原因导致客户关系的管理变得非常重要。

国际市场竞争已成为极具竞争力,如果他们不喜欢他们所得到的服务,客户就可以变更企业。

客户关系管理一个主要的目标就是维护客户。

当它被使用有效完全的时候,公司将能够与客户建立一个长久的关系。

客户关系管理工具通常会以现实的软件方式实现。

每一个软件程序可能不同的方式方法实现客户关系管理。

但是那是很重要的客户关系管理不仅仅是一个技术,客户关系管理可以更好地界定为一种方法,一个公司将实现自己的目标的方法,它应该是直接和公司的理念相关联,有许多原因企业应该拥有客户关系管理系统。

客户关系管理系统能够帮助公司找到最适合客户的因素。

一个公司必须认识到,如果他们不满足欲望和需求的客户,他们也不可能获得成功,而客户关系管理是一个功能强大的系统将允许他们这样做,实现企业的目标。

本系统的设计理念就是帮助企业对客户进行有效的管理,可以用来研究用户、管理用户、开发用户。

代替了之前的手工记录和传统记忆方式,避免了客户数据的遗漏和丢失,同时可以对客户进行一系列的需求和分类操作,添加新客户,对新客户进行操作,对即将流失的客户进行了解和分析,不断完善流失客户的需求,同时对客户提出的问题加以改进;通过计算机进行登录和管理,操作简单易懂,更符合公司的发展需要。

2系统方案论证

2.1系统可行性研究分析

在进行系统开发之前,需要确定系统开发方案,可行性分析的目的是在系统开发之前,经过详细的阅读需求文档以及各个功能模块的设计要求以及实现要求,明确系统开发的可行性,而可行性则取决于现实应用系统的资源和条件,对系统开发条件不成熟的地方加以讨论。

通过对系统实现目标以及对四个功能模块的初步了解和分析,提出可行性的方案并进行论证,本文在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析和对比论证,寻找出在各个方面都适合系统开发的条件。

2.1.1技术可行性论证

就技术而言,技术可行性分析是根据讨论和研究的客户关系管理系统需求分析所得到的对系统开发所需要的软件和技术支持。

通过讨论和论证,本系统主要采用MVC设计模式,选用WindowsXP作为服务器端的操作系统,主要采用面向对象的设计方法进行系统设计,在软件开发中选择MyEclipse9.0软件为开发工具;前台系统操作界面采用J2EE网页制作静态页面技术和JSP实现动态网页技术开发的;后台数据库采用MySQL设计完成,安装简单,实用,并采用JDBC、Servlet、Hibernate等技术实现数据库的连接;同时采用Tomcat7.0应用服务器,安装以后可以直接运行,采用火狐浏览器作为主浏览窗口;同时也采用CSS、JAVASCRIPT脚本语言实现网页不布局和表单提交的验证功能,系统具有界面美观、操作方便、可扩充性强等特点,给用户带来不一样的体验。

2.1.2经济可行性论证

软件的经济可行性论证是指进行客户关系管理系统开发所投入的人力与资金的论证,以及将来是否能达到所需要的效益,主要是指对客户关系管理系统开发的成本进行估算,而本系统的应用开发软件、硬件系统也易于获得。

所需要的软件开发工具均可以从互联网和导师处获取,开发成本相对较低。

而在一些小型企业引进使用本系统后,与传统的手工记录方式和操作相比,具有高效率、低成本的特点,可以节省人力和物力。

所以从经济可行性的角度来看,该客户关系管理系统可以进行开发。

2.1.3操作可行性论证

操作可行性论证主要是在客户关系管理系统开发过程中对四个功能模块的实现是否存在可行性,以及对系统完成后的操作是否被企业用户容易接受等方面进行论证。

首先,通过详细的阅读了系统的需求规格说明书,明确了该系统的功能需要,确定可行。

同时该客户管理系统对操作人员专业要求比较低,具有一定的计算机知识便可以对系统进行操作。

3系统开发技术及思想介绍

3.1J2EE网页制作技术

首先,网页制作技术分为静态网页部分和动态网页部分二部分,静态页面部分主要包括HTML,CSS,JAVASCRIPT三部分;其中HTML字面上翻译就是超文本标示语言,通过其基本元素的操作可是实现网页界面的完整性;通过定义CSS样式表,能让网页具有美观一致的画面,一个样式文件可以作用于多个界面,其中标签之间的所有内容都是样式规则;JAVASCRIPT即是一种描述语言,也是一种基于对象和事件驱动,通常JAVASCRIPT代码使用标记嵌入HTML文档中,通过使用JAVASCRIPT可以实现基本的表单提交验证功能。

动态页面部分主要包括Servlet和JSP二部分,其中Servlet允许用户在服务器上运行JAVA代码和生成动态内容。

在本系统中,通过详细的阅读系统需求文档,在系统的设计过程中也运用了以上的知识,首先利用HTML和CSS样式表基本知识进行开发,实现了基本的系统操作界面的静态网页;为了方便统一开发,利用页面框架技术将网页设计开发部分分为三个部分来实现,利用HTML实现基本网页内容,利用JAVASCRIPT技术实现表单的验证,利用CSS布局实现界面的美观修饰,给用户呈现出一个美观易懂的画面。

3.2数据库技术

数据库是存储在一起的相关数据的集合,这些数据是结构化的,并为多种运用服务,数据的存储独立于使用它的程序。

而在数据库中,SQL语句是一种通用的数据库查询语言,SQL一般有数据定义语言、数据操纵语言和数据控制语言组成,数据定义功能包括对基本表、视图、索引的创建、删除和修改操作。

而在系统中,数据查询是数据库的核心操作,SQL语言的数据查询只有一条SELECT语句,查询有单表查询、多表连接查询、嵌套查询和集合查询几个部分组成。

SQL的数据更新包括数据的插入、修改和删除等三种情况。

在本系统中,运用了MySQL数据库管理系统,对系统的数据库进行设计,对于不同模块的不同需求,通过设计在数据库中创建了多张相对应的表,对于用户表和职位表是在系统运行之前就插入,其余各个表数据的存储和操作是等系统完成之后运行用户自己插入存储。

3.3J2SE技术介绍

在J2SE技术当中,JSP是一种JAVA服务器端技术,它主要用来产生动态网页内容,JSP页面使用HTML表示网页上的静态内容,而在其中添加JAVA代码表示动态内容JSP是一种实现普通静态HTML和动态HTML混合编码的技术。

JDBC(JAVA数据库连接)是一种用于执行SQL语句的JAVAAPI,可以为多种关系数据库提供统一访问,它有一组用JAVA语言编写的类和接口组成。

而JDBC当中定义像DriverManager等一系列的类和接口,利用以上类和接口,程序员很容易实现与数据库的连接,传递SQL语句和处理检索结果。

在系本统中,运用了该技术实现了前台静态网页和后台数据库的连接功能,实现了数据的交换、插入、修改和存储,是客户关系管理系统中关键的技术。

3.4MVC设计思想

MVC设计思想是将程序分成相对独立,而又能协同工作的三个部分。

MVC是Model、View、Controller三个词的缩写,三个词分别代表应用的三个组成部分:

模型、视图与控制器。

Model有JavaBean来控制;View就是视图,由JSP等等构成,用途包括数据的呈现和收集用户的数据,Controller是控制器,由Servlet来控制完成,作用包括接受客户端的请求,调用模型完成业务逻辑和将下一个页面呈现给用户。

设计思想如图4.4MVC模式图例所示。

图4.1MVC模式图例

MVC模型工作流程是由客户端发出一个请求,首先给控制器Controll,之后控制器调用模型层Model,就是访问Pojo和Dao,Pojo的作用是传递参数,Dao是用来连接和访问数据库的,当有数据进行返回交换时,先返回给Dao,再返回给控制器,控制器在完成业务逻辑之后,通过视图将界面呈现给用户。

4系统开发软件介绍

4.1DreamWeaver软件概述

DreamWeaver是一款网页开发工具,是可视化的网页编辑软件,它能快速地创建网页,还提供了强大的网站管理和维护功能。

Dreamweaver还提供了开放的编辑环境,它可以协同相关软件和编程语言共同工作。

而且可以有多种视窗模式,提供了代码视图、设计视图、代码与设计视图3种视窗模式,运用所学习的静态网页的基本知识,可以完成基本网页的编写。

实现系统操作的界面要求。

软件使用如下图4.1所示:

图4.1DreamWeaver软件运行图

4.2MySQL数据库软件概述

MySQL是一个数据库管理系统,与其他数据库像DB2、Oracle、SQLServer等相比,规模小而且功能有限,但是对于客户关系管理系统来说,简单且易于安装和操作,MySQL数据库能够很好的完成开发任务,实现系统功能需求。

MySQL数据库运行截图如图4.2所示:

图4.2MySQL数据库运行图

4.3MyEclipse软件概述

MyEclipse是一种集成开发环境,利用它我们可以在数据库和网页上的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。

MyEclipse也是一种基于JAVA的可扩展的开源的开发平台。

就其本身而言,它仅仅只是一个框架和一组服务,主要用于通过插件组件构建开发环境。

尽管MyEclipse是使用JAVA语言开发的,但它的用途并不限于JAVA语言;例如,支持诸如C/C++等编程语言的插件已经可用。

MyEclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础。

同时我们可以用MyEclipse来开发JAVA应用程序,在本系统中就是运用该技术实现系统的功能。

MyEclipse软件运行图如图4.3所示:

图4.3MyEclipse软件运行图

5系统总体开发

5.1系统概述

该客户关系管理系统共分为营销管理模块、客户管理模块、服务管理模块和统计报表四个功能模块。

为了更好的发掘老客户的价值和作用,并开发更多的新客户,通过这个系统完成对客户基本信息、联系人信息、交往信息、客户服务信息的数字化记录,进行充分共享和对企业进行规范化的管理提供帮助;通过对销售机会的创建、客户开发过程的追踪和记录,提高新客户的开发能力;在客户将要流失时系统及时预警,以便公司企业人员及时采取相关措施,降低公司损失;同时系统能够提供相关有关客户的报表,以便公司高层随时了解公司客户情况,帮助制定公司下一阶段的发展方向。

5.2系统需求分析

整个客户关系管理系统都需要以客户为中心,从而简化各类与客户相关操作的信息,如销售、服务和查询等等,在构建系统的时候,应当考虑与公司其他系统之间的协调,但是本系统仅仅局限于进行对企业客户的一些基本管理,假设现在系统的使用者是某小型企业,那么,企业对该系统提出了如下需求:

首先系统需要包括营销管理模块、客户管理模块、服务管理模块和统计报表模块。

系统需要提供权限管理,以便于更好的管理,对于不同的角色能够赋予不同的权限,但是由于为了更好的有利于公司企业的发展,均设置为最高权限,即客户经理权限;同时为了更好的和企业客户交流,系统还需要提供一个客户联系人功能,用来管理和编辑存储客户的联系人信息;为了更好的统计企业目前的销售情况,系统还需要提供一个销售管理的功能,为公司下一步制定销售计划提供帮助;还需要提供一个服务反馈管理功能,能够及时的记录和操作顾客反馈的信息,对信息进行研究与分析,对公司发展所出现的问题进行分析和改正,最大限度的维护与老客户之间的关系,实现企业发展目标。

功能需求如图2.1客户关系管理系统功能图所示。

图2.1客户关系管理系统功能图

客户关系管理系统要求实现营销管理模块中的销售机会管理和客户开发计划功能;实现客户管理模块中的客户信息管理功能;实现服务管理模块中的服务创建、服务分配、服务处理、服务反馈和服务归档功能;实现统计报表模块中的客户构成分析和客户服务分析功能。

5.3系统功能分析

5.3.1系统营销管理模块

在系统的营销管理模块中,该模块用来处理公司企业的营销信息,包括销售机会管理和客户开发计划二个子模块功能。

客户经理在企业的发展过程当中扮演了一个重要的角色,客户经理有开发新客户的任务,在客户经理发现对于公司有利的销售机会时,应在该系统中录入该销售机会的信息,以便对该销售机会进行更好的开发。

同时销售主管也可以在客户管理管理系统中创建销售机会。

创建的销售机会由销售主管进行分配,以便更好的开发,每个销售机会分配给一个客户经理。

客户经理对分配给自己的销售机会制定相应客户开发计划,在制定完客户开发计划后,客户经理按实际实际当中的开发效果填写计划中每个步骤的执行效果进行比较和确认,同时在开发计划结束的时候,根据开发的结果不同,设置该销售机会为“开发失败”或“开发成功”,如果开发客户成功,系统自动创建新的客户记录。

功能需求如图3.1营销管理模块功能图所示。

图3.1营销管理模块功能

5.3.2系统客户管理模块

系统中的客户管理模块用来管理客户的信息,包括客户基本信息、联系人信息、客户交往记录信息、历史订单信息等功能。

客户是公司发展的构成部分之一,而客户的信息是企业发展的重要因素,应对企业所有的客户信息进行妥善保管、充分分析和利用,在客户的开发过程当中,每个客户经理有责任维护和保护自己负责的客户信息,随时更新。

在本系统中,客户信息将得到充分的共享,从而发挥最大的价值。

功能需求如图3.2客户管理模块功能图所示。

图3.2客户管理模块功能

5.3.3系统服务管理模块

服务管理模块用来处理客户服务信息,包括服务创建、服务分配、服务处理、服务反馈和服务归档等功能模块。

在服务创建模块中,客户服务是客户管理的重要工作,通过客户服务所获取的信息企业可以帮助客户更好的解决问题,进而提高客户满意度,更好的利于公司的发展。

同时还可以随时了解客户最新的动态,对于公司提供服务的要求,以便采取应对措施。

在服务分配模块中,销售主管对状态为“新创建”的服务进行分配,收到处理请求的客户经理对服务进行处理。

在服务处理模块中,被分配处理服务的客户经理负责对服务请求做出相应的处理,需要在客户管理管理系统中录入处理的结果。

在服务反馈模块中,对状态为“已处理”的服务主动联系客户进行反馈,填写处理结果,尽可能的挽留客户,提高客户对公司的满意度,系统可以对已归档的服务进行查询、查阅。

便于参考和解决类似的客户问题。

为更好的发展客户打下坚实的基础。

功能需求如图3.3服务管理模块功能图所示。

图3.3服务管理模块功能

5.3.4系统统计报表模块

统计报表模块用来生成报表数据信息,包括客户构成分析和客户服务分析二个功能模块。

在该模块中,企业可以了解客户对企业的贡献以及了解某种类型的客户有多少及所占比例;根据服务类型对服务进行统计;查看已经确认流失的客户流失记录,功能需求如图3.4统计报表模块功能图所示。

图3.4统计报表模块功能

6数据库逻辑设计

本系统中采用MySQL数据库作为系统开发数据库,在仔细阅读了系统的需求文档之后,对于不同模块的不同需要,需要对数据库进行逻辑设计,实现功能完成系统需要建立如下17张表,当模块需要传输和存储数据的时候,可以运用数据库技术对表进行连接查询,得到所需要的数据资料,将查询所得到的结果返回给客户端。

1.用户职位表

该表用来创建企业系统操作员工的权限问题而设置的,主要包括的职位的ID和所对应的职位名称,其中表中的职位ID设置成为主键,用来和其他表中数据的关联查询,这里需要特别注意的是,用户表里面的职位ID必须和用户职位表中的职位ID相对应。

用户职位表的定义如表6.1和图6.1所示:

表6.1用户职位表tabletbl_position

字段名

数据类型(数据范围)

是否可空

说明

positionId

int

notnull

职位id(主键)

positionName

varchar(50)

notnull

职位名称

图6.1用户职位表tabletbl_position

2.用户表

该表为用户表,包含和存储了用户的一些基本的信息,其中用户ID设置成为主键,其中包含了用户设置的用户名和密码,这也是系统登录时所需要输入的用户名和密码,是在系统运行之前设置,因为系统登录需要和数据库内部的用户表数据进行对比,对比成功方可进入操作系统,在创建数据的时候,需要注意和用户职位表当中的职位ID相对应。

用户表的定义如表6.2和图6.2所示:

表6.2用户表tabletbl_user

字段名

数据类型(数据范围)

是否可空

说明

id,

int

notnull

用户id(自增)

name

varchar(20)

notnull

用户姓名

pwd

varchar(50)

notnull,

用户密码

sex

int

DEFAULT0,

性别0男1女

phone

char(11),

手机号码

positionId

int,

职位id,参照用户职位表的id

 

图6.2用户表tabletbl_user

3.客户等级表

在客户等级表中包含了客户等级ID字段和客户等级名称字段,在数据库设置的时候,一般将客户分为战略合作伙伴、合作伙伴、大客户、普通客户和重点开发客户五个级别,同时他们和设定的用户等级ID相对应,须将客户等级ID设置成为主键。

客户等级表的定义如表6.3和图6.3所示:

表6.3客户等级表tabletbl_grade

字段名

数据类型(数据范围)

是否可空

说明

id

int

notnull

客户等级的id(自增)

name

varchar(30)

notnull

客户等级的名称

图6.3客户等级表tabletbl_grade

4.联系人表

联系人表中包含了联系人的一些基本信息,包含了姓名、性别、联系方式等字段,通过联系人数据的插入,可以迅速的在系统查询联系人的信息。

联系人表的定义如表6.4和图6.4所示:

表6.4联系人表tabletbl_contact

字段名

数据类型(数据范围)

是否可空

说明

contactId

int

notnull

联系人id(自增)

name

varchar(20)

notnull

联系人姓名

sex

int

DEFAULT0

联系人性别0男1女

contactPosition

varchar(50)

notnull

联系人职位

telephone

varchar(20)

notnull

联系人办公电话

phone

char(11)

联系人手机

customerId

int

notnull

联系人所属的客户id(参照客户表的Id)

remark

char(100)

notnull

备注

图6.4联系人表tabletbl_contact

5.客户表

客户表的定义中包含了客户的一些基本信息,将客户ID设置成为主键,通过客户ID可以查询到客户的基本信息,其中客户所对应的客户经理需要连接用户表来查询,而客户的等级则需要参照客户等级表来查询。

客户表的定义如表6.5和图6.5所示:

表6.5客户表tabletbl_customer

字段名

数据类型(数据范围)

是否可空

说明

customerId

int

notnull

客户id(自增)

customerName

varchar(50)

notnull

客户名称

area

varchar(50)

notnull

客户所处的地区

userid

int

notnull

客户所对应的客户经理(参照用户表的Id)

grade

int

notnull

客户等级的id(参照客户等级表的id)

pleased

int

notnull

客户满意度

credit

int

notnull

客户信用度

address

varchar(200)

notnull

客户地址

zip

char(6)

notnull

邮政编码

phone

varchar(15)

notnull

电话号码

fax

varchar(20)

notnull

传真号码

website

varchar(50)

notnull

网址

licenseNum

varchar(30)

营业执照注册号

corporation

varchar(20)

notnull

法人

capital

int

注册资金(万元)

turnover

int

年营业额(万元)

bank

varchar(100)

notnull

开户银行

bankNum

varchar(30)

notnull

银行账号

localtax

varchar(40)

地税登记号

nationtax

varchar(40)

国税登记号

图6.5客户表tabletbl_customer

6.服务归档表

通过对服务归档表的创建,可以实现对服务归档信息录入的保存操作,在将来企业的运作中可以及时查询,表中将服务归档ID设置成为主键,需要从已经反馈得瑟服务表中获得数据,这里需要参照服务反馈表的ID来获取数据进行服务归档操作,而服务归档的时间设置成为系统的当前时间。

服务归档表的定义如表6.6和图6.6所示:

表6.6服务归档表tabletbl_toFile

字段名

数据类型(数据范围)

是否可空

说明

id

int

notnull

服务归档的id(自增)

serviceFeedbackId

int

notnull

已经反馈的服务的id(参照服务

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

当前位置:首页 > 党团工作

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

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