??? Java 語(yǔ)言是Sun MicroSystems 公司于1995年正式命名并推出的一種面向?qū)ο蟮木幊陶Z(yǔ)言-OOP(abbr.Object Oriented Programming)。Sun 公司認(rèn)為:Java 程序設(shè)計(jì)語(yǔ)言被設(shè)計(jì)成是 by programmers for programmers,,其隨著 Internet 的發(fā)展而廣為流行。用它開發(fā)的系統(tǒng)“一次開發(fā),,到處運(yùn)行”的特色以及程序開發(fā)設(shè)計(jì)時(shí)所體現(xiàn)出的面向?qū)ο蟮乃枷肷钌畹赜|動(dòng)著人們,。它的語(yǔ)言簡(jiǎn)潔、集多種程序設(shè)計(jì)語(yǔ)言之大成,,且面向?qū)ο?、具有可移植性、分布性,、安全性,、高性能等特色。Java在向Internet/Intranet,,甚至計(jì)算機(jī)世界的各個(gè)領(lǐng)域滲透,,慢慢改變著人們的思維。而今Internet 熱浪一浪高過(guò)一浪,,從外部世界走向企業(yè)內(nèi)部形成Intranet,,促進(jìn)了Java 技術(shù)的利用開發(fā)。
??? 最新一代" title="最新一代">最新一代的ERP(Enterprise Resource Planning)管理系統(tǒng)" title="管理系統(tǒng)">管理系統(tǒng),,充分利用Java 的技術(shù)特點(diǎn),,使系統(tǒng)能夠在局域網(wǎng)和廣域網(wǎng)范圍內(nèi)整合使用,適合遠(yuǎn)程應(yīng)用,支持電子商務(wù)的管理軟件,。它是基于三層結(jié)構(gòu)技術(shù),同時(shí)具有圖形窗體界面(GUI)和瀏覽器界面(Browser),,支持網(wǎng)絡(luò)數(shù)據(jù)庫(kù),,真正面向網(wǎng)絡(luò)的管理軟件。
原理分析:
??? ERP管理系統(tǒng)是一種軟件,,其技術(shù)的先進(jìn)性直接影響其生命期,。先讓我們來(lái)看看市場(chǎng)上流行的管理軟件應(yīng)用框架。
當(dāng)前市場(chǎng)上管理軟件的應(yīng)用框架呈多樣化,,包括:文件服務(wù)器(F/S),、兩層客戶/服務(wù)器(2t C/S)、三層客戶/服務(wù)器(3t C/S),、瀏覽器/服務(wù)器(B/S),、N層結(jié)構(gòu)(Nt)。前三種是從數(shù)據(jù)庫(kù)應(yīng)用角度來(lái)說(shuō)的,,后兩種是從WEB開發(fā)技術(shù)角度的,,因此前后兩類不具有可比性。
??? 管理軟件首先是數(shù)據(jù)庫(kù)應(yīng)用軟件,,因此具有優(yōu)良的數(shù)據(jù)庫(kù)處理性能相當(dāng)重要,。三種類型的應(yīng)用在數(shù)據(jù)庫(kù)處理上存在較大的差異。
??? 文件服務(wù)器,,是最早采用的數(shù)據(jù)庫(kù)應(yīng)用結(jié)構(gòu),,數(shù)據(jù)存放在特定的數(shù)據(jù)文件里如:DBF、PARADOX,、ACCESS等,。這種結(jié)構(gòu)最大的缺點(diǎn)是數(shù)據(jù)處理沒有服務(wù)程序來(lái)維護(hù),網(wǎng)絡(luò)性能差,,處理網(wǎng)絡(luò)數(shù)據(jù)的速度慢,,當(dāng)用戶量或數(shù)據(jù)量大到一定程度時(shí)就會(huì)有數(shù)據(jù)丟失的危險(xiǎn),數(shù)據(jù)安全不容易保證,。
??? 兩層客戶/服務(wù)器,,是針對(duì)大型數(shù)據(jù)庫(kù)管理系統(tǒng)開發(fā)的應(yīng)用,沿用早期的主機(jī)系統(tǒng)的數(shù)據(jù)處理方式,,它充分地利用大型數(shù)據(jù)庫(kù)本身固有的數(shù)據(jù)處理能力,,數(shù)據(jù)處理的速度得到了提高,同時(shí)數(shù)據(jù)的安全也得到了保證,。在結(jié)構(gòu)上將應(yīng)用分為兩層:數(shù)據(jù)庫(kù)服務(wù)器和客戶端" title="客戶端">客戶端,,借助微機(jī)和局域網(wǎng)作一定程度的分布計(jì)算。雖然這樣,但是兩層結(jié)構(gòu)的還是有如下問(wèn)題不能解決:
(1) 當(dāng)用戶量增大時(shí),,數(shù)據(jù)庫(kù)的性能就會(huì)下降,。因?yàn)椋?dāng)用戶連接上數(shù)據(jù)庫(kù),,開始處理數(shù)據(jù)時(shí),,大型數(shù)據(jù)庫(kù)管理系統(tǒng)就會(huì)為每一個(gè)用戶建立一個(gè)連接,物理上表現(xiàn)為內(nèi)存的占用,,當(dāng)用戶量直線增加時(shí),,數(shù)據(jù)庫(kù)本身可用的資源就會(huì)相應(yīng)減少,因此整個(gè)數(shù)據(jù)庫(kù)的性能就會(huì)下降,。
(2) 計(jì)算分布的峰值分配問(wèn)題難于解決,。在財(cái)務(wù)系統(tǒng)中存在需要大量計(jì)算的過(guò)程,如果將全部計(jì)算過(guò)程放置到數(shù)據(jù)庫(kù)服務(wù)器上運(yùn)行,,會(huì)加重?cái)?shù)據(jù)庫(kù)服務(wù)器的負(fù)擔(dān),,如果放在客戶端,網(wǎng)路上傳輸?shù)臄?shù)據(jù)會(huì)過(guò)多,,且客戶端的處理能力有限,。
(3) 其應(yīng)用程序依賴于某一個(gè)特定類型的大型數(shù)據(jù)庫(kù),用戶更換數(shù)據(jù)庫(kù)類型需要大規(guī)模改動(dòng)程序,,甚至重寫,。應(yīng)用的移植性不夠好。
(4) 客戶端程序與數(shù)據(jù)緊密相關(guān),,如果用戶需求變更,,面臨大量需要修改的程序。用戶需求不易滿足,。
最新一代ERP的技術(shù)創(chuàng)新點(diǎn)論述
(1)專業(yè)性:
?? 最新一代ERP管理系統(tǒng)確定的設(shè)計(jì)核心是:“以財(cái)務(wù)核算為管理核心,,以業(yè)務(wù)進(jìn)程為管理基礎(chǔ),以辦公自動(dòng)化為管理手段”,。理由很簡(jiǎn)單:如果核算不清楚,,根本談不上管理,所以核算是管理的核心,;但是如果對(duì)業(yè)務(wù)進(jìn)程沒有進(jìn)行跟蹤,,控制,而只做“事后分析”的話,,同樣沒有達(dá)到管理的需要,。企業(yè)辦公自動(dòng)化的先進(jìn)程度直接影響管理手段,管理效果,。因此“財(cái)務(wù)核算,,業(yè)務(wù)進(jìn)程,辦公自動(dòng)化”自然成為最新一代ERP管理系統(tǒng)的核心。
(2)科學(xué)性:
??? 軟件并不僅僅幫助業(yè)務(wù)人員" title="業(yè)務(wù)人員">業(yè)務(wù)人員簡(jiǎn)化業(yè)務(wù)操作,,存儲(chǔ)與查詢業(yè)務(wù)信息,,更為重要的是輔助業(yè)務(wù)人員對(duì)個(gè)人業(yè)務(wù)進(jìn)行管理,幫助管理層進(jìn)行決策分析,,實(shí)現(xiàn)業(yè)務(wù)有序流動(dòng),,充分發(fā)揮各部門和人員的潛力,更加高效,、協(xié)調(diào)的工作,最終實(shí)現(xiàn)企業(yè)的現(xiàn)代化管理,。
(3)方便實(shí)用性:
??? 軟件采用生動(dòng)直觀的用戶圖形界面和向?qū)讲僮?,充分體現(xiàn)了業(yè)務(wù)處理的高度自動(dòng)化,操作簡(jiǎn)單,,易學(xué)易用,。
為盡量簡(jiǎn)化操作人員的實(shí)際操作、提高用戶的工作效率,,軟件開發(fā)人員設(shè)計(jì)了層次清晰,、完整的數(shù)據(jù)結(jié)構(gòu)與業(yè)務(wù)流程,高度的數(shù)據(jù)共享性將業(yè)務(wù)員從大量的文字錄入中解脫出來(lái),。
(4)安全可靠性:
??? 最新一代ERP管理系統(tǒng)采用先進(jìn)的大型數(shù)據(jù)庫(kù)安全機(jī)制,,保證數(shù)據(jù)的安全與可靠。先進(jìn),、完備的用戶權(quán)限管理,,可定義用戶與資料之間、用戶與用戶之間,、用戶與部門之間,、部門與部門之間的各種數(shù)據(jù)共享控制權(quán)限。結(jié)合業(yè)務(wù)審批流程化設(shè)計(jì),,可以安全可靠的管理企業(yè)的業(yè)務(wù)資源和業(yè)務(wù)流程,。
從系統(tǒng)的基本結(jié)構(gòu)來(lái)講,由于對(duì)所有客戶端的數(shù)據(jù)都經(jīng)過(guò)HTTP交換,,可以通過(guò)SSL技術(shù)實(shí)現(xiàn)數(shù)據(jù)的加密傳輸,,使安全可靠性得到進(jìn)一步提高。
(5)高度的靈活性:
??? 系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的開放性,,使用戶可自由定義各種系統(tǒng)表的字段(如各種合同,、單證等的指標(biāo)項(xiàng)目);數(shù)據(jù)運(yùn)算關(guān)系的自由定義可滿足用戶各種業(yè)務(wù)及預(yù)核算的要求,;打印格式的自由定義可滿足用戶各種合同,、單證、報(bào)表的多種式樣需求。綜上所述可實(shí)現(xiàn)用戶各種輸入,、輸出,、數(shù)據(jù)關(guān)系的自由定義,從而可滿足不同用戶的業(yè)務(wù)處理,,以及同一用戶的不同時(shí)期的業(yè)務(wù)變化,。
(6)多系統(tǒng)的無(wú)縫連接性:
??? 最新一代ERP的業(yè)務(wù)系統(tǒng)、財(cái)務(wù)管理系統(tǒng),、進(jìn)銷存系統(tǒng)等系統(tǒng)是完全一體化的,。業(yè)務(wù)數(shù)據(jù)可直接進(jìn)入財(cái)務(wù)、庫(kù)存表,,同時(shí)業(yè)務(wù)人員可以直接查詢業(yè)務(wù)在財(cái)務(wù)上的真實(shí)發(fā)生數(shù)據(jù),、查詢財(cái)務(wù)對(duì)業(yè)務(wù)人員的核算內(nèi)容。
(7)平臺(tái)化開發(fā)技術(shù)
??? 最新一代ERP采用多層體系架構(gòu),、構(gòu)件化的開發(fā)方法,、平臺(tái)化開發(fā)環(huán)境,從而保證了系統(tǒng)良好的可維護(hù)性和可擴(kuò)展性,;采用Browser/Server(B/S)方式,,J2EE三層架構(gòu),客戶端運(yùn)行在WEB瀏覽器上,,保證了操作的簡(jiǎn)便易學(xué),。
??? 三層客戶/服務(wù)器,克服了上述兩種數(shù)據(jù)庫(kù)應(yīng)用的所有缺點(diǎn),,由于采用了組件技術(shù),,做到了真正的分布式網(wǎng)絡(luò)計(jì)算。三層結(jié)構(gòu)包括數(shù)據(jù)庫(kù)服務(wù)器,、中間層" title="中間層">中間層服務(wù)器,、客戶端三個(gè)層次。
??? 數(shù)據(jù)庫(kù)服務(wù)器:采用市場(chǎng)流行的大型數(shù)據(jù)庫(kù)管理系統(tǒng),,實(shí)現(xiàn)海量存儲(chǔ),,支持多種類型的數(shù)據(jù)庫(kù),如:MS SQL SERVER,、SYBASE,、ORACLE 等,并且支持同時(shí)使用異種數(shù)據(jù)源,。為企業(yè)數(shù)據(jù)提供有力的安全保障,。???
??? 中間層服務(wù)器:包含了封裝了財(cái)務(wù)業(yè)務(wù)邏輯的組件,財(cái)務(wù)系統(tǒng)的大部分的計(jì)算工作在此完成,。首先,,中間層同數(shù)據(jù)庫(kù)打交道,,維護(hù)同數(shù)據(jù)庫(kù)的連接,采用“數(shù)據(jù)緩沖“和”代理連接”,,保證只有較少數(shù)量的用戶數(shù)據(jù)連接,,接著、將數(shù)據(jù)按照一定的財(cái)務(wù)規(guī)則打包成業(yè)務(wù)對(duì)象數(shù)據(jù),,最后將其傳向客戶端,。中間層擁有自己的內(nèi)存和CPU,并且可根據(jù)不同應(yīng)用需要進(jìn)行分布式計(jì)算,。所以能夠提供較高性能的數(shù)據(jù)庫(kù)應(yīng)用,。
??? 客戶端:在三層結(jié)構(gòu)中的客戶端只是用戶的界面外殼,不具有任何的復(fù)雜計(jì)算,,它需要做的工作就是將中間層傳入的業(yè)務(wù)對(duì)象數(shù)據(jù)放置在界面和控制用戶的鍵盤鼠標(biāo)操作,。因此它可以有多種形式,如圖形窗體,、瀏覽器等,。在這里我們可以看到網(wǎng)絡(luò)服務(wù)器作為數(shù)據(jù)庫(kù)應(yīng)用客戶端的一部分,。網(wǎng)絡(luò)服務(wù)器和瀏覽器的組合作為客戶端,。因此,網(wǎng)絡(luò)版財(cái)務(wù)軟件具有兩張面孔,,GUI和WEB/BROWSER,。他們公用同樣中間層組件。提供不同風(fēng)格的客戶端是三層結(jié)構(gòu)程序的一大成功之處,,用戶可以根據(jù)自己的喜好和工作性質(zhì)來(lái)選用不同的客戶端,,例如:需要大量錄入數(shù)據(jù)的人員(數(shù)據(jù)采集人員)可選用鍵盤、鼠標(biāo)控制靈活的GUI客戶端,,操作方便,;數(shù)據(jù)分析人員需要做的只是用鼠標(biāo)點(diǎn)擊,會(huì)喜歡BROWSER客戶端,;GUI適合局域網(wǎng)用戶使用,,如果是遠(yuǎn)程用戶則可以通過(guò)BROWSER客戶端訪問(wèn)財(cái)務(wù)數(shù)據(jù)。自由和實(shí)用在網(wǎng)絡(luò)版財(cái)務(wù)軟件充分的體現(xiàn)出來(lái)了,。
?
上圖展示了系統(tǒng)的基本結(jié)構(gòu)圖,。客戶層(瀏覽器或GUI界面)與服務(wù)層之間通過(guò)HTTP協(xié)議進(jìn)行數(shù)據(jù)交換,,HTTP協(xié)議是Internet廣泛使用的協(xié)議,。服務(wù)器層包含了WEB服務(wù)器、應(yīng)用服務(wù)器,、和企業(yè)應(yīng)用,,企業(yè)應(yīng)用模塊遵循JAVA的EJB標(biāo)準(zhǔn)實(shí)現(xiàn),,能夠適應(yīng)目前大多應(yīng)用服務(wù)器產(chǎn)品(如SUN的iPannet,IBM的Web Sphere,以及WebLogic,JRun等)。服務(wù)層與數(shù)據(jù)層之間使用Java的JDBC標(biāo)準(zhǔn)接口進(jìn)行數(shù)據(jù)的訪問(wèn),,通過(guò)配置不同數(shù)據(jù)庫(kù)產(chǎn)品的JDBC驅(qū)動(dòng)程序,,使得對(duì)目前主流數(shù)據(jù)庫(kù)(SqlServer、Oracle,Sybase,、DB2等)得到支持,。Java語(yǔ)言在數(shù)據(jù)庫(kù)應(yīng)用方面,特別在基于Web 的B/S結(jié)構(gòu)的在線數(shù)據(jù)庫(kù)應(yīng)用方面的煩瑣復(fù)雜配置等,,并不能使用戶和程序開發(fā)雙方都十分滿意,。SunSoft雖提供了用Java語(yǔ)言編寫成的Java與數(shù)據(jù)庫(kù)的接口規(guī)范JDBC(Java DataBase Connectivity,而JavaSoft說(shuō)JDBC并不代表什么),使Java程序可以通過(guò)統(tǒng)一標(biāo)準(zhǔn)規(guī)范的JDBC API來(lái)與不同的數(shù)據(jù)庫(kù)通信,。確保了“100%純Java”的解決方案,。JDBC API 定義了Java中的類和接口,表示數(shù)據(jù)庫(kù)連接,、SQL 指令,、結(jié)果集合等。它允許Java程序員發(fā)送SQL 指令并處理結(jié)果,。J2EE應(yīng)用程序模型起始于Java程序語(yǔ)言和Java虛擬機(jī),,他們提供的不斷提高的便攜性,安全性和開發(fā)人員能力的提高是應(yīng)用程序模型的基礎(chǔ),。 應(yīng)用程序模型通常包括JavaBean組件模型,,JavaBean為普通功能編寫基于Java技術(shù)的代碼更加容易,利用JavaBean的開發(fā)工具可以可視的定制,,組合這些組件,。
瀏覽器/服務(wù)器和N層結(jié)構(gòu)不是數(shù)據(jù)庫(kù)應(yīng)用類型,只是WEB技術(shù)的一種方法和擴(kuò)展手段,,它們從數(shù)據(jù)庫(kù)應(yīng)用結(jié)構(gòu)上來(lái)說(shuō)既可以是F/S結(jié)構(gòu),,又可以是2層C/S 結(jié)構(gòu),從數(shù)據(jù)庫(kù)應(yīng)用的網(wǎng)絡(luò)性能上與三層結(jié)構(gòu)應(yīng)用存在一定的差距,,不能擺脫其結(jié)構(gòu)上的缺陷,。
??? 最新一代ERP管理系統(tǒng)全面采用組件技術(shù),應(yīng)用如“積木”般地搭建起來(lái),,這為用戶和二次開發(fā)商提供了一個(gè)很好的開發(fā)平臺(tái),,通過(guò)標(biāo)準(zhǔn)的接口,可以直接調(diào)用中間層組件進(jìn)行數(shù)據(jù)操作,,這樣,,用戶能將ERP管理系統(tǒng)同其它應(yīng)用系統(tǒng)有機(jī)的結(jié)合起來(lái),將企業(yè)各個(gè)系統(tǒng)全面整合為一個(gè)完整的企業(yè)管理信息系統(tǒng),。
??? 綜上所述,,最新一代ERP管理系統(tǒng)特性可總結(jié)為是“一套系統(tǒng),、兩個(gè)面孔、三層結(jié)構(gòu),、N種數(shù)據(jù)庫(kù)”,。