大型系统OA--技术
OA辦公自動化系統(tǒng)--技術(shù)
1.由于涉及企業(yè)的流程控制與規(guī)則管理。所以系統(tǒng)對于規(guī)范要求的嚴(yán)謹(jǐn)性,導(dǎo)致在小型開發(fā)組在進(jìn)行開發(fā)時必須基于成熟的技術(shù)架構(gòu)。開源的lemon OA,采用了如下技術(shù)細(xì)節(jié):
mysql:開源數(shù)據(jù)庫中技術(shù)最為成熟。
hibernate:經(jīng)典的orm框架,由于在OA系統(tǒng)建模時,采用的流程引擎activiti是以一種叫petri網(wǎng)的狀態(tài)轉(zhuǎn)移模型。狀態(tài)轉(zhuǎn)移本身,就含有較多的表(實體)映射與關(guān)聯(lián)。
SpringMVC:其實這點值得考慮,因為:(1)系統(tǒng)為了實現(xiàn)很多橫向組件,把這些功能放在一個compositeFilter中;(2)系統(tǒng)中url mapping過于分散,當(dāng)然基于Spring MVC可以直接映射到method上,但是url管理顯得有些復(fù)雜。
Spring:在配置文件定義bean,在java源代碼文件定義注解,可以非常方便地提升工作效率。使得在配置文件中,不需要寫那么多的路徑或者class。而在java源代碼文件中,可以通過注解,省去一些較為通用工具類的加載和初始化。
maven+jetty:web應(yīng)用的版本管理變得有章可查,而且系統(tǒng)變得輕量,因為依賴庫是通過maven-repository在load時進(jìn)行的加載。
Spring Security:通過Security的authentication和authority機(jī)制,定義角色和控制。
inspetktr:通過inspektr實現(xiàn)audit審核服務(wù)。
scheduler:定時器功能的實現(xiàn)。
------
2.下面通過兩個序列圖來展現(xiàn)這樣的系統(tǒng)里的數(shù)據(jù)流:
controller之前的數(shù)據(jù)流:
controller之后的數(shù)據(jù)流:
--------------------unfinished----------------------
總結(jié)
以上是生活随笔為你收集整理的大型系统OA--技术的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Dijkstra算法的另一种证明
- 下一篇: lucene入门