2010北京JavaOne之行隨筆

          Posted on 2011-01-05 10:08 Li0N 閱讀(2099) 評論(1)  編輯  收藏

          有幸參加12月在北京舉行的JavaOne|Oracle OpenWorld|Oracle Develope 會議,發些感想吧。

          會場隨處可見的是這樣的Logo: , 看起來Oracle似乎準備要做另一個更加商業化的IBM了,從Sparc CPU到 Sun Machine, Solaris OS, ZFS, Oracle VM for Sparc/x86, Oracle Enterprise Linux, Oracle Database(Oracle 11g/Timesten/Berkeley DB/Mysql), Java, Oracle Enterprise Manager, Oracle Fussion Middleware, 一個覆蓋硬件到最上層軟件的完整提供者, 這其中又有許多平臺化的東西:
          1. Sparc 體系,投入很大精力做出這樣的機器: , 然后多個機器形成Larry一直倡導的Grid Computing,構成一個有強大計算能力的平臺
          2. Oracle VM體系,原先有Oracle VM for x86, 已經在虛擬存儲,虛擬機性能和監控管理做了很多工作,現在加入Oracle VM for Sparc,虛擬化(IaaS)平臺就更加完整,你可以在x86上跑solaris, 也可以在Sparc機器上跑x86系的virtual machine
          3. JVM體系,會將原有的Jrockit的優點逐漸移植到Hotspot上去,拋開商業化的目的性不談,我相信在未來比較長的時間里, JVM是有生命力和其它語言系抗衡的。
          4. Fussion Middleware體系。FM構成了現在Oracle應用軟件的結構,你可以把它看作一個軟件版的“從CPU到應用的全棧式解決方案”。比如說,傳統意義上,你需要去關注DB, J2EE, UI, 分布式,并發性,領域化,IDE,PLM等等這些開發流程中必然碰到的問題,Oracle的目標則是提供“完整”的解決方案。基于JDeveloper 11g + Weblogic + ADF + DB,構成最基本也是“最完整”的開發工具集。所以和傳統J2EE開發體驗不同的是,你發現很多很多事情Oracle都幫你做了,你想過的目標也許它做到了(一個JDeveloper = 配了BPM設計器, HTML/JSP設計器, XML/XSD設計器, UML/ER設計器, SVN/CVS連接器, EJB設計器以及其它許許多多功能的Eclipse).

          隨筆:

           
          1. 關于Oracle Complex Event Processing(Oracle CEP). 對CEP不熟的同學可參加維基百科:What's CEP. 現場展示了一個Demo: CEP Demo. 展示了對于業務領域內復雜的事件的實時處理。感覺這個CEP產品的流程化已經做得很徹底了,從eclipse的designer, 到流程的監控響應console, 到事件服務器集群和事件緩存。我把它們的eclipse plugin( http://download.oracle.com/technology/software/cep-ide/11/)裝好后,親自實踐了一下:            
             我們的項目組也有做流程引擎的,要是有這樣程度的ide,相信用戶會更接受一些吧.
          2. JDK7 Filesystem. 支持許多查詢操作,例如: 獲取父目錄,獲取名字,獲取絕對路徑,以及一些判斷的API

            File OPeration(文件操作)相關的:
            1. 可以通過路徑獲取文件
            2. 更加容易地讀寫文件。
            file.newOutputStream();
            file.createFromPath();

            在創建文件時,可以定義初始的文件屬性:如何設置為(
            'rw--r----)
            可以更加容易地拷貝文件:(除了內容,也支持拷貝元屬性,例如源文件的讀寫權限)

            Channels
            SeekableByteChannel:
            維護一個文件偏移位置, 等價于一個隨機文件(RandomAccessFile), 即可以隨便從文件的任意偏移開始讀取。

            DirectoryStream, 用來枚舉目錄中的文件或者目錄。
            :用較少的資源
            :支持大的目錄
            :對遠程文件系統提供平滑訪問支持
            :提供句柄來訪問目錄

            Filtering(過濾)
            :內建glob
            /regex 的模式匹配
            :可使用自定義的過濾器實現

            Recursive Operations(遞歸操作)
            Files.walkFileTree
            :深度優先訪問,因為每個目錄節點會被訪問兩次。
            :每個目錄或者文件結點被訪問時,都會調用FileVisitor(來獲取信息?)
            :Symbol_links(鏈接,軟鏈接) 在默認情況下不會使用,除非指定FOLLOW_LINKS的選項。

            File Attribute
            支持本地文件系統的各種屬性
            支持NFSv4j的ACL模型
            支持Samba(DOS類型)
            使用FileStore.來查看支持的文件屬性


            File Change Notification
            監視文件或者目錄,當有改變(增加,刪除,更新)時可以發事件來通知
            通常是通過Polling來循環查詢
            提供WatchService來監控手動注冊的文件對象。


            File SPI
            可以提供對某種虛擬文件系統的實現,例如一個Zip文件(也可以是光盤的各種格式:UDF, ISO, IMG, BIN, ), Mac的DMG包, Linux的TAR
            /GZIP/BZIP等. 虛擬機的磁盤格式(QCOW, VMDK)
            可以提供對某種實體文件系統的實現.
          3. Oracle ADF. 是一個基于JSF(JSF?很多人一聽就準備放棄了的吧~~,其實很多架構上的思想是很值得借鑒的)的UI框架。使用JSP的Tag語法加上JDeveloper提供的Designer支持,能非常快速地搭建出一個功能非常完整的Ajax Application出來。很多思想的光芒可供參考:
            1. JavaScript的封裝性,很多功能,特別是Ajax的功能,都不需要去寫js了
            2. UI組件的多樣化, 從菜單,表單,表格,到樹,日歷,日期,滾動條,調節尺,盡可能多樣的控件。但是我感覺這些還是不太夠的,這些組件或者能幫助你,但是實際中還是需要自己去寫JS。
            3. Data Binding的支持,看圖說話:
                            
          簡要地說,通過JSF的Managed Bean支持session/request/application scope的變量,再加上它自有的Page Definition實現Page scope的變量,就做到了頁面到頁面的傳遞數據。仍然是通過Page Definition, 將從DAO或者EJB那邊來的數據傳遞到頁面上。

          Feedback

          # re: 2010北京JavaOne之行隨筆  回復  更多評論   

          2011-01-11 00:00 by Guichen
          我靠……你這個是年鑒么……09年一篇 11年一篇……

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          posts - 2, comments - 2, trackbacks - 0, articles - 0

          Copyright © Li0N

          主站蜘蛛池模板: 铅山县| 武山县| 新河县| 洞口县| 平南县| 福州市| 横山县| 德安县| 台山市| 尼木县| 固阳县| 乌审旗| 大冶市| 安陆市| 三台县| 同仁县| 永清县| 外汇| 太保市| 乌鲁木齐县| 项城市| 泸州市| 长乐市| 高唐县| 阿拉善左旗| 会昌县| 星座| 惠州市| 永嘉县| 于田县| 平安县| 来安县| 定日县| 吉林省| 会同县| 班玛县| 隆尧县| 扎兰屯市| 子洲县| 阳原县| 陵川县|