Java面試題(5)__Java

來源:互聯網
上載者:User

72、EJB的角色和三個對象
 一個完整的基於EJB的分散式運算結構由六個角色群組成,這六個角色可以由不同的開發商提供,每個角色所作的工作必須遵循Sun公司提供的EJB規範,以保證彼此之間的相容性。這六個角色分別是EJB組件開發人員(Enterprise Bean Provider)、應用組合者(Application Assembler)、部署者(Deployer)、EJB 伺服器提供者(EJB ServerProvider)、EJB 容器提供者(EJB Container Provider)、系統管理員(System Administrator)
三個對象是Remote(Local)介面、Home(LocalHome)介面,Bean類

73、EJB容器提供的服務
主要提供聲明周期管理、代碼產生、持久性管理、安全、交易管理、鎖和並發行管理等服務。

74、EJB規範規定EJB中禁止的操作有哪些。
1.不能操作線程和線程API(線程API指非線程對象的方法如notify,wait等),
2.不能操作awt,
3.不能實現伺服器功能,
4.不能對靜態屬性存取,
5.不能使用IO操作直接存取檔案系統,
6.不能載入本地庫.,
7.不能將this作為變數和返回,
8.不能迴圈調用。

75、remote介面和home介面主要作用
remote介面定義了業務方法,用於EJB用戶端調用業務方法。
home介面是EJB工廠用於建立和移除尋找EJB執行個體

76、bean 執行個體的生命週期
  對於Stateless Session Bean、Entity Bean、Message DrivenBean一般存在緩衝池管理,而對於Entity Bean和Statefull SessionBean存在Cache管理,通常包含建立執行個體,設定上下文、建立EJBObject(create)、業務方法調用、remove等過程,對於存在緩衝池管理的Bean,在create之後執行個體並不從記憶體清除,而是採用緩衝池調度機制不斷重用執行個體,而對於存在Cache管理的Bean則通過啟用和去啟用機制保持Bean的狀態並限制記憶體中執行個體數量。

77、EJB的啟用機制
  以Stateful Session Bean為例:其Cache大小決定了記憶體中可以同時存在的Bean執行個體的數量,根據MRU或NRU演算法,執行個體在啟用和去啟用狀態之間遷移,啟用機制是當用戶端調用某個EJB執行個體業務方法時,如果對應EJBObject發現自己沒有綁定對應的Bean執行個體則從其去啟用Bean儲存中(通過序列化機制儲存執行個體)回複(啟用)此執行個體。狀態變遷前會調用對應的ejbActive和ejbPassivate方法。

78、EJB的幾種類型
會話(Session)Bean ,實體(Entity)Bean 訊息驅動的(Message Driven)Bean
會話Bean又可分為有狀態(Stateful)和無狀態(Stateless)兩種
實體Bean可分為Bean管理的持久性(BMP)和容器管理的持久性(CMP)兩種

79、客服端調用EJB對象的幾個基本步驟
設定JNDI服務工廠以及JNDI服務地址系統屬性,尋找Home介面,從Home介面調用Create方法建立Remote介面,通過Remote介面調用其業務方法。

80、如何給weblogic指定大小的記憶體?
  在啟動Weblogic的指令碼中(位於所在Domian對應伺服器目錄下的startServerName),增加set MEM_ARGS=-Xms32m -Xmx200m,可以調整最小記憶體為32M,最大200M
81、如何設定的weblogic的暖開機模式(開發模式)與產品發布模式?
可以在管理主控台中修改對應伺服器的啟動模式為開發或產品模式之一。或者修改服務的開機檔案或者commenv檔案,增加set PRODUCTION_MODE=true。

82、如何啟動時不需輸入使用者名稱與密碼?
  修改服務開機檔案,增加 WLS_USER和WLS_PW項。也可以在boot.properties檔案中增加加密過的使用者名稱和密碼.

83、在weblogic管理制台中對一個應用域(或者說是一個網站,Domain)進行jms及ejb或串連池等相關資訊進行配置後,實際儲存在什麼檔案中?
  儲存在此Domain的config.xml檔案中,它是伺服器的核心設定檔。

84、說說weblogic中一個Domain的預設目錄結構?比如要將一個簡單的helloWorld.jsp放入何目錄下,然的在瀏覽器上就可打入 http://主機:連接埠號碼//helloword.jsp就可以看到運行結果了?又比如這其中用到了一個自己寫的javaBean該如何辦?
  Domain目錄伺服器目錄applications,將應用目錄放在此目錄下將可以作為應用訪問,如果是Web應用,應用目錄需要滿足Web應用目錄要求,jsp檔案可以直接放在應用目錄中,Javabean需要放在應用目錄的WEB-INF目錄的classes目錄中,設定伺服器的預設應用將可以實現在瀏覽器上無需輸入應用程式名稱。

85、在weblogic中發布ejb需涉及到哪些設定檔
  不同類型的EJB涉及的設定檔不同,都涉及到的設定檔包括ejb-jar.xml,weblogic-ejb-jar.xmlCMP實體Bean一般還需要weblogic-cmp-rdbms-jar.xml

86、如何在weblogic中進行ssl配置與用戶端的認證配置或說說j2ee(標準)進行ssl的配置
  預設安裝中使用DemoIdentity.jks和DemoTrust.jks     KeyStore實現SSL,需要設定管理員使用EnableSSL,配置其連接埠,在產品模式下需要從CA擷取私人密鑰和數位憑證,建立identity和trustkeystore,裝載獲得的密鑰和數位憑證。可以配置此SSL串連是單向還是雙向的。

87、如何查看在weblogic中已經發布的EJB?
可以使用管理主控台,在它的Deployment中可以查看所有發行的EJB

88、CORBA是什麼?用途是什麼?
  CORBA 標準是公用對象請求代理結構(Common Object Request Broker Architecture),由對象管理組織(Object Management Group,縮寫為 OMG)標準化。它的組成是介面定義語言(IDL),語言綁定(binding:也譯為聯編)和允許應用程式間互操作的協議。其目的為:用不同的程式設計語言書寫在不同的進程中運行,為不同的作業系統開發。

89、說說你所熟悉或聽說過的j2ee中的幾種常用模式?及對設計模式的一些看法
     Session Facade Pattern:使用SessionBean訪問EntityBean
Message Facade Pattern:實現非同步呼叫
EJB Command Pattern:使用Command JavaBeans取代SessionBean,實現輕量級訪問
Data Transfer Object Factory:通過DTO Factory簡化EntityBean資料提供特性
Generic Attribute Access:通過AttibuteAccess介面簡化EntityBean資料提供特性
Business Interface:通過遠程(本地)介面和Bean類實現相同介面規範商務邏輯一致性
EJB架構的設計好壞將直接影響系統的效能、可擴充性、可維護性、組件可重用性及開發效率。項目越複雜,項目隊伍越龐大則越能體現良好設計的重要性。

90、說說在weblogic中開發訊息Bean時的persistent與non-persisten的差別
  persistent方式的MDB可以保證訊息傳遞的可靠性,也就是如果EJB容器出現問題而JMS伺服器依然會將訊息在此MDB可用的時候發送過來,而non-persistent方式的訊息將被丟棄。

91、Servlet執行時一般實現哪幾個方法。
public void init(ServletConfig config)
public ServletConfig getServletConfig()
public String getServletInfo()
public void service(ServletRequest request,ServletResponse response)
public void destroy()

92、j2ee常用的設計模式。說明原廠模式。
       Java中的23種設計模式:
Factory(原廠模式),         Builder(建造模式),         Factory Method(Factory 方法模式),
Prototype(原始模型模式),Singleton(單例模式),       Facade(門面模式),
Adapter(適配器模式),       Bridge(橋樑模式),           Composite(合成模式),
Decorator(裝飾模式),       Flyweight(享元模式),       Proxy(代理模式),
Command(命令模式),         Interpreter(解譯器模式), Visitor(訪問者模式),
Iterator(迭代子模式),     Mediator(調停者模式),       Memento(備忘錄模式),
Observer(觀察者模式),     State(狀態模式),           Strategy(策略模式),
Template Method(模板方法模式), Chain Of Responsibleity(責任鏈模式)
原廠模式:原廠模式是一種經常被使用到的模式,根據原廠模式實現的類可以根據提供的資料產生一組類中某一個類的執行個體,通常這一組類有一個公用的抽象父類並且實現了相同的方法,但是這些方法針對不同的資料進行了不同的操作。首先需要定義一個基類,該類的子類通過不同的方法實現了基類中的方法。然後需要定義一個工廠類,工廠類可以根據條件產生不同的子類執行個體。當得到子類的執行個體後,開發人員可以調用基類中的方法而不必考慮到底返回的是哪一個子類的執行個體。

93、EJB需直接實現它的業務介面或Home介面嗎,請簡述理由。
 遠程介面和Home介面不需要直接實現,他們的實現代碼是由伺服器產生的,程式運行中對應實作類別會作為對應介面類型的執行個體被使用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.