摘 要:客户关系管理(CRM,Customer Relationship Management的缩写)是一种管理的思想。是为了加强跟客户的交流,了解客户的需求,从而不断对公司的产品和公司的服务根据客户的需求进行提高来满足客户的需求。使用IT技术实现对客户关系的信息化管理,是以客户为中心的管理实现。
本课题将使用Spring、SpringMVC 和 Hibernate开发,Spring和SpringMVC属于SpringFrameWork的产品。 SpringMVC可以使用多种视图解决方案,例如:FreeMarker、PDF、JSP(JavaServer Pages)、JSTL、iText 和POI等等。Spring MVC 框架对于视图是透明的,所以开发者可以选择自己的视图技术,本课题使用的是Freemarker技术。Spring MVC 将控制器(Controller)、模型(Model)、视图(View)分离开来,这样做是的他们更容易更换。本课题开发的系统使用MVC的三层架构,分别是:表现层、业务层、持久层。表现层使用Freemarker技术,业务层使用SpringMVC框架,持久层使用Hibernate。
根据企业的需求设计,将系统分为员工信息管理、组织架构管理、客户信息管理、工作流管理等。本系统的三个基础的问题:1)权限控制问题。本系统采用的是基于角色访问控制(RBAC,Role-Based Access Control)的权限控制框架。在RBAC中,将权限分配给系统角色,再将系统角色分配给适当的用户,同样可以把单个的角色分配给用户,这使得权限管理更加灵活。使用RBAC权限管理系统可以使得权限的管理更为简单。在组织中,会有不同的角色,每个角色拥有各自的权限,一个用户可以拥有多个角色。如果在实际的应用中需要修改系统的权限,则只需要修改角色就可以对所有拥有该角色的用户生效,大大节省了维护的成本。2)工作流问题。本系统中有关业务的审批将采用工作流来实现。很多公司使用的是纸张的表单,需要使用手工的方式传递,需要带着纸质的表单到审批人处一一审批签字,工作效率极其低下,而且不能实现报表统计的功能。而使用工作流系统,用户只要在计算机上填写相关的表单,系统会根据系统定义好的流程自动流转下去,审批人可以看到表单相关的信息,并可以在系统中进行审批。3)分页问题。系统中将有大量的数据需要用表格的形式展现。这就会涉及到大量数据的展现问题。如果一次将所有数据展示出来,显示会很耗时间。系统将使用分页技术,将数据一页一页的显示。减轻对数据库的负担,提高用户的体验程度。
关键字:CRM;SpringMVC Spring Hibernate 权限管理 工作流管理
目录
摘要
Abstract
1 绪论-1
1.1 项目开发背景-1
1.2 开发的意义-1
2 相关理论知识及系统实现关键技术-3
2.1 客户关系管理概述-3
2.2 Spring MVC介绍-3
2.3 Spring介绍-4
2.4 Hibernate介绍-4
2.5 MySQL数据库介绍-4
2.6 JQuery EasyUI介绍-4
3 需求分析-6
3.1 业务概况-6
3.2 系统可行性分析-7
3.3 系统功能需求分析-8
3.4 本章小结-10
4 系统设计-11
4.1 系统总体设计-11
4.2 系统网络设计-11
4.3 系统功能结构设计-13
4.4 系统详细设计-13
4.5 数据库设计-19
本章小结-28
5 系统实现-29
5.1 系统开发工具和运行环境-29
5.2 系统核心功能模块的实现-29
5.3 本章小结-45
6 总结-46
致谢-47
参考文献-48