客户关系管理系统的相关技术及概念介绍本篇论文目录导航:【题目】J2EE技术下的客户关系管理系统研究【第一章】J2EE技术在客户关系管理系统中的应用绪论【第二章】客户关系管理系统的相关技术及概念介绍【第三章】客户关系管理系统的需求分析及架构设计【4.1】客户关系管理系统的数据库设计【4.2】客户关系管理系统的相关模块设计【第五章】客户关系管理系统的详细设计及测试【结论/参考文献】基于J2EE技术的客户关系管理平台构建结论及参考文献第2 章相关技术及概念介绍本章中将会对基于J2EE 的客户关系管理系统的设计、开发、实现以及测试过程中所涉及到的技术以及对客户关系管理的概念进行简单的介绍,方便以后章节中的介绍与讨论。
2.1 J2EE 技术介绍J2EE 体系结构是最早是由SUN 提出的,从J2EE 的本质上来说,其是一套中间层框架,该框架标准是由J2EE 体系来规定的,而开发人员可以在该体系内,开发多层次的分布式应用系统以及相关的中间件等产品,这些产品可以解决企业应用中遇到的兼容性的问题以及多产品集成时候遇到的问题,只要能够遵循J2EE 开发标准开发出来的产品,企业就能够集成在基于J2EE 技术标准开发的平台之上,进而解决企业用户的不同软件产品之间的兼容性的问题。
并且由于J2EE 技术的开源性质,大大降低了开发成本,提高了开发人员的效率,节约了时间。
同时,设计良好的J2EE 平台是具有层次关系的,能够把业务逻辑和底层网络分离。
J2EE 还提供了Java 的常见技术,如:JDBC(Java Database Connectivity)、EJB(Enterprise JavaBeans)、Java Servlets API、RMI (Remote Method Invoke)、JSP(JavaServer Pages)等技术的支持,提供支持的目的主要在于为企业开发缩短时间,降低成本,提高生产率,这样做能够使得企业在较短时间内将自己所需要的产品上线,投入到运营之中,大大的提高了企业的竞争力。
J2EE 还支持第三方提供中间层集成框架,例如本文中的基于J2EE 的客户关系管理系统中所涉及到的Struts2 框架、Spring 框架等,这些技术能够满足可扩展性应用的需求。
同时由于大量优秀和高效的开源框架的运用,使得基于J2EE 的客户关系管理系统的开发向着高效、易开发、开发成本低等优势发展。
2.1.1 Struts2 框架作为Apache 于2007 年推出的框架,Struts2[7]是基于MVC 设计的,该框架主要用于轻量级Web 应用开发上面,是由其前身Struts1 与WebWork 框架相结合诞生的新型框架。
Struts2 框架自诞生之日起,就得到了广泛的应用,同时,随着技术的不断成熟,Struts2 框架采用了很多先进的设计理念,如MVC 设计模式等。
同时,Struts2 框架与Struts 框架相比,具有解耦和的设计优点,能够避免出现与业务逻辑以及展现层过度耦合的情况的出现,是一款广泛应用的框架技术。
Struts2 的工作原理如图 2.1 所示,该框架首先将所有的Http 请求都转发到它的前端控制器FilterDispatcher ,由前端控制器FilterDispatcher 所截获,进而开始初始化上下文数据,随后,FilterDispatcher 将这个请求转交给ActionMapper 来进一步进行判断,之后,根据需要来决定调用的Action.如果有进一步的需要,FilterDispatcher 控制器就会将请求交给ActionProxy进行代理,并交给相应的Action来执行,最后,将执行结果转发到相应的展现页面。
2.1.2 Spring 框架作为开源框架的Spring[9]是一个轻量级的Java/JavaEE 应用框架,自从RodJohnson 创建了Spring 框架依赖,由于其设计的精良,得到了开发人员的广泛认可与应用,已经成为事实上的业务逻辑层的业界标准,成功的替代了EJB.同时,Spring 框架对与流行的Struts2、Hibernate 等框架的支持与集成也很好,并且通过IOC 与AOP 两个核心技术降低了业务逻辑层的耦合程度,减少了与业务逻辑与自身框架之间的依赖程度。
这些良好的特性使得Spring 框架已经占据了无可取代的地位。
Spring 的IOC 技术中文被称之为控制反转,该项技术主要出于解耦和的目的,在使用Spring 框架进行开发时,开发人员不需要在代码中维护对象的依赖关系,仅仅在配置文件中进行相应的设置之后,就可以令Spring 框架来自动注入指定的对象。
Spring 面向切面编程(AOP)技术得到的支持相当丰富,Spring 框架支持业务逻辑与应用相分离的开发模式。
而这种模式使得应用对象只实现它们应该做的,而并不负责其它事情,如日志或事务支持。
控制反转与面向切面编程技术是Spring 的核心技术,因此,随着Spring 框架的广泛应用,持久层与展现层的各种框架都与Spring 紧密集成,提供了相关的API 服务与调用。
在这个基础上,使用Spring 框架的开发人员可以使用目前市场上常见的主流框架与Spring 进行集成,拓展了Spring 的应用范围,使得Spring 框架与不同的框架组合,形成了不同的开发与部署方案,解决了企业开发中遇到的诸多问题。
支持持久层也是Spring 的一大功能,Spring 对JDBC 进行了精简与封装,并提供了事务管理功能,它还为Hibernate、iBATIS 等O/R Mapping 框架提供了整合方案。
Spring最大的特性之一就是很简单的在同一程序中融合不同的数据库访问技术。
2.1.3 MyBatis 框架作为由iBatis框架发展而来的半自动化的OR Mapping的持久层框架技术,MyBatis是基于Apache 2.0 开源协议的[11,12].MyBatis 框架能够支持Java 和。
NET 技术,并且具有面向对象的特征,极大的降低了开发人员的工作强度。
MyBatis 框架将数据映射抽象为简单的JDBC,因此,该框架在实际的应用之中,拥有着接近JDBC 的执行效率。
同时,由于MyBatis 采用的简单的XML 或注解的配置方式,因此,允许了程序员在开发的过程中,为了提高效率使用原生的SQL 语句的功能,MyBatis 的执行效率要比Hibernate 更加灵活,同时,也有着很低的学习成本与开发成本,因此,在实际的应用之中与Hibernate分庭抗衡,占了很大的一部分市场。
2.1.4 JQuery 框架JQuery 框架最早创建于2006 年。
作为优秀的Java Script 框架,JQuery 框架与prototype 框架不相上下,由于其的设计优良,因此,JQuery 框架自诞生之日起,就受到了业界的广泛好评以及众多程序员的使用。
JQuery 框架博采众长,兼顾参考HTML 和CSS 的优点,秉承了优秀的设计原则和思想[13-15].更为重要的是,使用JQuery 框架开发出来的程序拥有比同类框架更少的代码量,这在无形中减少了开发人员的工作量,减低了公司的开发成本,因此,随着JQuery 框架的日渐成熟以及相关拓展框架与支持的丰富,使用的人群也会愈发增多,使得JQuery 框架在Web 应用开发之中得到了大量的应用及推广。
不仅如此,JQuery 框架还支持各种灵活的方式来完成Web 应用开发中遇到的常见问题,如对表单进行验证、tab 导航等功能。
同是,设计良好的JQuery 框架还支持行为层和结构层分离,这样做的方便了广大的运维人员,使得后期维护工作大大减少。
2.1.5 JUnit 框架作为由Kent Beck 和Erich Gamm 编写的一个回归测试框架,JUnit 是一个开源的单元测试的自动化测试框架[16-18].Junit 框架主要由六个包组成,如图2.4 所示。
其中的Framework 是核心,包含了框架中的所有基类。
这个框架由7 个核心类及接口组成,其中有四个重要的类:TestSuite,TestCase,TestResult 和TestRunner.JUnit 框架是在极限编程和重构中应用较为广泛的工具,而且其断言功能也为开发者带来了极大的便利,在实现自动单元测试的情况下可以较好的提高开发效率。
JUnit 测试框架,主要用于单元测试,因此,随着单元测试应用的场合不同,其应用的场景也会不尽相同,比如,可以用于测试期望结果的断言。
同时,JUnit 另一个特性是可以使测试代码与产品代码分开,这样做利于代码的健壮性,同时不与产品代码耦合。
2.2 客户关系管理客户关系管理(Customer Relation Management, CRM )是一种提升客户忠诚度与满意度的创新式的个性化的服务过程,用于企业通过利用相应的信息技术来维系客户关系。
客户关系管的最终目标是提高客户忠诚度,扩大客户市场,提高客户对产品的满意度,提高忠实客户的转化率。
在国外的发展己有十余年的历史背景的客户关系管理,将会随着逐步推广和实施的客户关系管理系统,而提升国内企业的市场占有率、生存能力和国际竞争力。
作为指导企业的思想和方法,客户关系管理是以改善企业与客户之间的关系为目的,作用于企业的市场营销等相关领域。
企业内部之间相互协调,以及与外部客户联系,都需要客户关系管理系统来进行,不仅如此,客户关系管理系统中还需要确保与客户相关的数据、市场销售、售后支持相关的数据的安全性与一致性,保证这些敏感数据的安全。
可见客户关系管理系统作用于公司的产品相关的各个阶段,从最初的市场营销人员与客户的接触,维持客户关系开始,到销售人员的洽谈、接触、签订合同,再到技术人员开发产品、交付产品以及最终售后服务人员的对所销售产品的支持与服务。
而一般常见的客户关系管理系统会包括市场管理子系统、销售管理子系统、客户支持与服务管理子系统,相关子系统的功能描述如表 2.1 的常见的子系统。
能够最大程度地支持客户关系管理理念在企业范围内的实施与扩展。
2.3 本章小结本章节重点介绍了J2EE 平台、基于J2EE 的客户关系管理系统开发相关的Struts2、Spring、MyBatis、JQuery、JUnit 框架以及数据库知识作了详细介绍,同时对客户关系管理所涉及到的理论知识进行详细说明,为后面章节的系统开发奠定了坚实的理论和技术基础,以保证本研究的顺利进行。
返回本篇论文导航。