云計算平臺下CRM系統設計與部署 |
發布時間: 2012/8/6 15:15:58 |
通過對現有的CRM系統的改造,結合流行的服務端組件框架技術Spring Hibernate和RIA技術Flex以及Spring BlazeDS集成框架技術全新設計了基于云計算平臺的具有RIA特性的CRM系統,極大降低了中小型企業實施CRM的費用,促進CRM應用的普及。
隨著我國進出口貿易的飛速發展。但競爭也不斷加劇,如何提高客戶滿意度一直稱為外貿企業不懈追求的目標,因此引入CRM已經成為這些企業的共識。但對于廣大中小企業來說,巨大的硬件和軟件投資,加之沒有專門的IT專業維護人員,使他們普遍感覺力不從心。云計算的發展和普及,以及云計算的低成本實施費用為這些企業應用CRM帶來了前所未有的契機,本文采用Spring Source的Cloud Foundary云平臺并結合Spring框架技術和Flex RIA技術開發了可定制的面向中小外貿企業的CRM系統,極大降低了這些企業實施CRM的成本。推動了CRM的普及和推廣容。 1 系統實現技術 1.1 基于Java平臺的云計算平臺Cloud Foundry CloudFoundary是SpringSource公司開發的基于Java平臺,內置Spring支持的自助式云計算平臺,用于部署、運行和管理JavaEE企業級應用。此于計算平臺提供了一站式服務的云管理界面,使得在云計算環境下部署Java平臺應用非常簡便和快捷。 該云平臺使用Spring的tcServer作為其應用的Application Server,它是與Tomcat6兼容的增強型運行環境。SpringSource不久將與SalesForce合作發布新版的VMForce云計算環境,全面支持Java和Spring框架,并融合SalesForce.com數據庫和其領先的CRM平臺技術,提供性能和功能全面優化的云計算平臺。 1.2 Spring框架 Spring是一個開源框架,由Rod Johnson創建。它為了解決企業應用開發的復雜性而創建的。Spring使用基本的JavaBean(POJO)來完成以前只能由EJB完成的事情。然而,Spring的用途不僅限于服務器端的開發,從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。Spring的核心是使用IOC容器和注入方式完成Java對象及其依賴對象的創建和封裝,現代企業級應用已全面采用Spring作為核心對象管理器。 1.3 BlazeDS框架 BlazeDS是Adobe公司開發的用于連接Flex客戶端和JavaEE服務器端的通訊服務開源框架,它能夠使得運行在瀏覽器的Adobe Flex應用程序與服務器端的Java應用程序相互通信。BlazeDS使用二進制數據通訊協議AMF在客戶端和服務器端傳輸數據,要比傳統的HTTP協議的文本傳輸協議要快至少10倍。因此Flex客戶端的響應速度要比普通的HTTP協議快得多,也比異步傳輸的AJAX也高效得多,尤其傳遞CRM的大批數據尤其明顯。 1.4 SpringBlazeDS集成框架 2009年底Adobe與Spring開發了新的框架技術Spring BlazeDS InteFation?梢岳肧pring框架技術通過Adobe Flex、BlazeDS、Spring以及Java技術創建RIA應用。開發者可以通過BlazeDS公開Spring管理的服務而無需額外的配置文件,進而將Spring的易用性與Flex、BlazeDS以及Java整合起來快速創建企業級RIA應用。 由于使用普通的BlazeDS Remote Object技術是無法得到Spring管理的對象的,也無法利用Spring注入的依賴對象,因此需要使用Spring BlazeDS集成框架,使得Flex客戶端直接與Spring管理的服務器端業務對象通訊,完成Flex與服務器對象的協作和調用。 2 系統設計與實現 2.1 總體結構設計 系統總體采用分層結構的MVC模式,服務器端使用JavaEE平臺為基礎,持久層采用Hibernate框架,對象管理層使用Spring,由Spring的IoC容器全面管理服務器端所有的Java類對象,實現對象間依賴關系的注入?蛻魧硬捎肍lex4 RIA框架,實現了媲美桌面的Web應用操作模式。Flex使用BlazeDS框架實現客戶端直接與服務器端業務對象的交互,避免使用類似Struts等控制層框架,簡化了系統的設計,提高了系統的工作效率。 因為BlazeDS無法直接取得Spring管理的業務對象,系統使用Spring BlazeDS Integration框架,將Spring管理的Bean對象發布為Flex客戶端可以直接訪問的Remote Obiect。系統的整體結構參見圖1所示。 圖1 CRM系統分層結構圖 從中可以看出不同框架技術在系統中的層次結構和職責。 2.2 持久層設計 持久層完成Java對象與數據庫表的ORM映射,系統使用Hibernate框架技術,避免了繁雜的JDBC SQL編程,提高了項目的開發效率和迸度。更進一步使用Spring管理下的Hibernate整合技術,使用Spring配置方式管理Hibernate的SessionFactory對象,Spring配置Hibernate的示意代碼如下: 與本地開發不同的是云計算平臺下,由于服務器采用虛擬主機技術,無法像本地服務器那樣配置數據庫連接池,因此需要CRM系統自己管理數據庫連接池。本系統使用Spring管理下的數據庫連接池,運用Apache開源DBCP框架配置連接池代碼如下: 配置的數據庫連接池對象dataSource,直接被Spring注入到Hibernate框架,用于得到SessionFactory對象。目前Cloud Foundry云平臺只支持MySQL數據庫,未來為提供其他類型的數據庫。 本文出自:億恩科技【www.vbseamall.com】 |