當前位置:名人名言大全網 - 端午節短信 - 什麽是按平臺劃分的手機?外那夏

什麽是按平臺劃分的手機?外那夏

BysArchitecture平臺簡介

1設計目標

基於J2EE平臺和面向組件技術,用於企業級應用程序開發、運行、管理、監控和維護的中間件平臺,借鑒SSH(Struts、Spring和Hibernate)的MVC架構,常用功能組件化,前端開發支持jsp、AJax和流行的Flex,以實現顯示界面和人機之間的完美交互,既滿足復雜業務、工作流、WEB報表和業務基礎的開發需求,又盡可能地對其進行改進。

根據用戶的角色(崗位),對系統功能的訪問受到控制。不同的角色對功能有不同的訪問權限,管理員分配每個角色可以操作的功能列表。

根據用戶組(部門)控制對系統資源的訪問權限。系統資源是指文件、目錄和數據形式;所有者可以將系統資源的訪問權限分配給不同的用戶組;

訪問日誌。每次用戶訪問系統和資源時,即記錄用戶名、訪問時間、IP地址、訪問的功能(URL)和訪問的資源(文件);錯誤和錯誤信息的詳細記錄;

實現多格式數據導入導出的上傳/導出機制,即可以導出Excel、PDF、RTF和HTML,並根據Excel模板將元數據導入數據庫,實現批量數據更新;

根據設定的規則(如貨運數據將過期),系統會自動判斷是否需要報警或提示信息,並將業務處理結果反饋給相關人員。

中英文雙語支持;

2技術方案

壹般來說,它是采用MVC設計思想的多層技術架構來實現的,分為Oracle數據庫、開源Hibernate數據對象訪問層(模型)、開源Spring技術事務控制和系統服務管理層(服務)、開源Struts控制器層(控制器)。Servlet過濾器用於訪問控制和內容過濾層,在此之上是Html+Flex頁面表示層(視圖)。

HTML+Flex表示層提交的請求需要被Servlet過濾器攔截。

1)驗證訪問的合法性;

2)同時檢查並轉換頁面數據為I18N國際編碼等等。

HTML+Flex表示層提交的請求需要通過Servlet Filter進行處理,並交給Struts controller層中的ActionServlet進行頁面流控制,並對請求和響應進行邏輯處理。在處理過程中,壹般會調用Spring事務控制和服務管理層的API。

在Spring的事務控制和服務管理層中,它控制系統訪問的事務完整性和數據壹致性,執行特定的業務邏輯和數據處理,獲得處理結果,並在必要時將結果反饋給調用者(Servlet/HTML),以便向用戶響應反饋信息。此時,在處理數據時,將調用Hibernate數據對象來訪問層數據對象,並實現Oracle數據庫的數據更新和查詢。

各級協同工作/相互調用示意圖如下:

除了封裝上述技術框架和制定開發規範外,我們還開發了上傳/下載、電子郵件、日程安排、門戶網站和其他組件,以滿足該系統的功能和技術要求:

BysArchitecture平臺內置了門戶菜單管理組件、電子郵件組件和上傳/下載文件組件;在服務層中,組織、帳戶、權限、工作流、計時器和時間表組件可以在任何時候直接調用和使用,無需開發。

3關鍵技術實現

3.1系統操作功能的基於角色的訪問控制

系統有多個組功能,每個組功能形成壹個界面菜單項;每個組被分組以在功能目錄樹上形成文件夾節點;每組包含多個操作功能點。

系統中的每個角色都相當於真實組織中的壹個職位。壹個用戶可能有多個職位,因此他應該在系統中被分配多個“角色角色”。通過這種方式,系統中的用戶擁有多個角色,每個角色都有壹個可操作的功能列表。因此,每個用戶都可以獲得自己的可操作功能列表,並且他可以且只能訪問那些被分配了自己角色的功能。

3.2基於內容過濾的資源訪問控制

基於內容過濾的資源訪問控制機制首先將用戶身份分為所有者、組和其他。創建文件夾和文件的用戶被自動設置為該資源的“所有者”,所有者有權分配初始資源訪問權限;

所有者可以將“讀取”、“寫入”和“執行”的權限分別分配給自己、其帳戶組的所有成員和其他用戶(r/w/e)。

因此,訪問控制屬性值字段總是附加到文件或數據表單,不同的組合值代表不同身份(所有者/組/其他)的不同權限(r/w/e)。例如,form01的權限屬性值為“0620”,意思是:1)所有者有權讀寫(0400+0200)form 01,所有者所屬的組有權寫入(0020)form 01。其他用戶(others)對表單01沒有任何權限(0400是所有者閱讀+0200是所有者書寫+0020在組中是可寫的+0000是其他用戶無權訪問=0620)。

這是Unix操作系統非常成熟的權限控制機制,維護權限非常簡單有效。

基於內容過濾的權限屬性設置及說明表;

某些用戶屬性值的結果

用戶0400允許所有者閱讀。

0200允許所有者寫入。

0100對於文件,允許所有者執行,對於目錄,允許所有者在目錄中搜索。

群組0040允許群組成員閱讀。

0020允許組成員寫。

0010對於文件,允許組成員執行,對於目錄,允許組成員在目錄中搜索。

其他用戶0004允許其他用戶閱讀。

0002允許其他用戶寫入。

0001對於文件,允許其他用戶執行,對於目錄,允許其他用戶在目錄中搜索。

例如,要為其他用戶設置讀寫權限,可以將0004與0002相加得到0006。可以對用戶和組執行類似的操作,並且可以將三個總數加在壹起以產生完全合格的數字模式。

讀取:查詢、導出;

寫:創建、更新、刪除和導入;

執行:後臺操作。

3.3對日誌的良好支持

使用Spring AOP技術進行細粒度的日誌記錄。本系統主要體現在日誌記錄、運費錄入日誌、運費查詢使用率等功能。

此外,通過Servlet過濾器,用戶可以記錄每次訪問系統和資源的時間,即用戶名、訪問時間、IP地址、訪問的函數(URL)和訪問的資源(文件),無壹例外。同時,不必為每個功能模塊單獨開發日誌功能,而是進行統壹的日誌管理,詳細記錄錯誤和錯誤信息。

3.4身份認證系統

無論字符串對象(密碼/會話ID)、流式指紋和數字證書文件流對象,都被抽象為對象對象。在技術架構的Filter過濾器中,將對象object和對象類型作為參數傳遞給“身份認證”組件以驗證身份,並將結果返回給Filter過濾器。

在“身份驗證”組件中,對象根據不同的對象類型調用不同的方法進行驗證;對於驗證失敗的訪問,向瀏覽器返回錯誤頁面或提示頁面;驗證後,它被下載到ActionServlet進行進壹步處理。

因此,身份認證技術的抽象使得系統具備用戶密碼、數字證書、時間戳、指紋等多種對象類型的身份認證能力。

3.5上傳/導出機制

知名開源組織Apache提供的FileUpload組件用於上傳文件,業界先進的開源項目JasperReport可用於導出多格式數據,如Excel、PDF、RTF和HTML。

3.6預警、提醒和反饋機制

根據設定的規則(如貨運數據將過期),系統會自動判斷是否需要報警或提示信息,並將業務處理結果反饋給相關人員。

設計警報類和警報接口類,業務類實現接口,調用接口方法將消息對象傳遞給警報類,壹些警報類根據特定條件處理並向用戶發送消息。

定時器和任務調度組件可以支持在系統中設置預警和報警後臺程序的運行時間間隔,如每分鐘運行、壹天中的某個時間運行、壹月中的某個時間運行、壹月中的某個時間運行等,以檢查是否有預警和報警邊界。您可以通過電子郵件、短信和彈窗報警。當然,妳也可以集成MSN報警。

3.7交易控制技術實施

對於跨系統訪問,使用異步問答直接調用,根據返回結果進行相應的邏輯處理和可靠性處理,無需跨系統事務性封裝;

本地數據庫訪問的事務管理使用hibernate支持的基於JDBC的事務管理技術。

3.8國際多語言技術實現

Flex和JAVA都支持國際編碼和國際資源分配。您可以設置locale屬性集並在運行時加載language屬性,以實現中英雙語界面。

4領先技術的引入

4.1彈性

自從B/S架構迅速普及以來,我們壹直面臨著這樣壹個問題:如何像C/S那樣實現表示層的精確控制和良好的用戶體驗?RIA(富互聯網應用程序)應運而生。

RIA是什麽意思?

非凡的網絡功能

維護成本更低

學習成本更低

更好的用戶體驗

更強大的用戶界面

更好的交互性

更先進的開發模式

更強大的多媒體功能

更好的數據管理

更好的程序控制

4.1.1優勢

直觀地說,用戶最清楚的理解如下:

它更具互動性。與傳統網站相比,用戶的界面感幾乎可以被視為壹個具有聲音,光線和陰影的多媒體交互環境。

減輕服務器負載技術的實現機制不同於服務器的改進和優化,是壹種平臺級的性能提升方案。

在數據傳輸中,客戶斷開連接,而在線數據仍在那裏,這與web相似?2.0技術規範的壹些優勢。

第壹次訪問flex網站時,速度比傳統網站稍慢。但是如果重復訪問網站,下次訪問的速度肯定比傳統網站快,因為用戶的非數據更新體驗已經下載到本地客戶端。

4.1.2 Flex的業務案例

納斯達克股票市場

SAP支出分析

惠普打印工作室

Google Searchmash

招商銀行網上銀行的財務分析

雅虎地圖系統

2008年奧運聖火來到我的家——搜狐奧運會

美國在線、易貝、貝寶、商務對象、SAP

4.2賈斯珀報告

JasperReports是壹款功能強大的報告生成工具,能夠將豐富的內容描述到屏幕、打印機或PDF、EXCEL、HTML、XLS、CSV和XML文件中。

完全用Java編寫,可用於各種Java應用程序(包括J2EE或WEB應用程序)來生成動態內容。它的主要目的是以簡單靈活的方式幫助創建定向頁面。

JasperReports根據XML文件中定義的報表設計,通過JDBC從關系數據庫接受數據。為了用數據填充報表,必須首先編譯報表設計。事實上,編譯報表設計意味著編譯描述報表設計的XML文件中定義的所有Java表達式。為了檢查報告設計的壹致性,在編譯時會進行各種測試。準備將結果填入報告設計中,然後用於生成具有不同數據集的文檔。

JasperReports是壹個經過多年測試的穩定、高性能的系統(PDF、EXCEL、HTML、XLS、CSV和XML文件)。它可以嵌入到java程序中,成為系統中壹個嵌入式的穩定組件。

4.3 Apache文件上傳

著名開源組織Apache發布的FileUpload組件技術可以上傳壹個或多個文件,也可以接收普通的表單數據。

它可以通過流技術將上傳文件的進度信息反饋給調用者,這樣用戶就可以監控上傳文件的進度並對出現問題的原因進行反饋,非常友好。

經過世界各地無數系統多年的應用、檢驗和改進,它已成為壹種成熟、穩定和高性能的組件。它可以設置上傳文件的大小限制,並通過流式傳輸技術優化上傳文件的傳輸速度和性能。

當Flex和Apache FileUpload壹起使用時,用戶可以通過瀏覽器flash界面清楚地看到上傳速度和任何可能出現的問題。