摘要: 今天看了一天原來他們寫的代碼,越看越郁悶,主要是沒有設計文檔,而且里面很多被舍棄的功能,但是代碼沒有去掉,而且也沒有寫注釋,不知道干什么用的,也許是我太菜了吧?簡單分析一下這個模塊的代碼吧模塊名稱叫“信息簡報 ”,功能包括五個部分:信息接受,信息發送,分類管理,組管理,權限配置。其中用戶部分會用到公共模塊,日志部分就是直接使用System.out.pring通過JBOSS輸出...
閱讀全文
摘要: 今天老大給了我一個任務,要我一個星期之內看懂一個模塊的代碼。打開第一個類就遇到了JDBC,數據庫還是Oracle,2個都不懂,只好先學習一下JDBC這個東西JDBCTM 是一種用于執行 SQL 語句的 JavaTM API(有意思的是,JDBC 本身是個商標名而不是一個縮寫字;然而,JDBC常被認為是代表 “Java ...
閱讀全文
從今天開始,我準備把GOF的23種設計模式重新學習一下,并且用Java語言全部描述一次。
Abstract Factory(抽象工廠) 對象創建型模式
提供一個創建一系列相關或相互依賴對象的接口,而無需指定它們具體的類。
今天把Structs和EJB稍微了解了一下。
Structs是apache 組織jakarta 項目的一個子項目,用以改善 web 系統的結構,是一個基于J2EE的Web形式MVC模式實現。Structs是由一組類、Servlet和Taglib組成。Structs有其自己的控制器(Controller),基本組件是ActionServlet中定義的Servlet,由ActionMapping定義的,ActionMapping類表示的是Action對象的名字和位置。當一個請求進入控制器時,它將請求的路徑映射到Action的位置,并且將請求傳送給Action。Structs另外一個重要部分是標簽(TagLib),主要由頁面制作人員使用。
EJB(Enterprise JavaBean ) 是設計成運行在服務器上,并由客戶機調用的非可視遠程對象。可通過多個非可視 JavaBean 構建 EJB。它們有一個部署描述符,其目的與 JavaBean 屬性相同:它是以后可由工具讀取的 bean 的描述。EJB 還獨立于平臺,一旦編寫好,還可以在任何支持 Java 的平臺(包括客戶機和服務器)上使用。

如果不使用EJB,在EJB服務層實現的業務核心將由普通JavaBeans實現,不能很好的保證負責MVC的JavaBeans和負責業務核心的JavaBeans清晰地分開。
采用EJB,Web完全只是一個MVC模式的實現,關鍵業務核心是在EJB的服務層實現,這樣做的優點是,Web只負責界面相關部分,因為,如果是一個智能客戶端,如Swing或J2ME,在不需要修改任何業務核心的情況下能夠方便地更換。同樣,提供Web Services功能,也只是在 Web層修改,不會涉及EJB方面的修改,同樣保證了系統的穩定性,保證了系統升級和未來的擴展性。
EJB容器(如JBoss)已經提供了對象池和緩存機制,所以,沒有事務機制的無狀態Session Bean的性能肯定要強于普通JavaBeans。EJB容器不但在單機中提供了對象池和緩存,而且可以跨服務器實現動態負載平衡,這些都無需開發者自己開發任何軟件代碼。
EJB提供的事務機制非常周全,但事務機制帶來的缺點是性能的降低,在一般企業應用或數據庫系統應用中,EJB不會對你構成很重的包袱。
通過一天的學習,雖然沒有寫出Structs和EJB的實現代碼,但是基本上對這兩個東西有了初步的了解