2013-07-17 13 views
0

當我從java進行JDBC連接查找時,在完成它之後,我應該關閉連接。 我想知道當我們查找一個遠程EJB時,我們仍然打開某種到EJB遠程服務器的'連接'。但是,嘿,在完成調用其業務方法後,我們永遠不會關閉EJb遠程接口。爲什麼我們不需要關閉對遠程EJB服務器打開的連接

+0

這聽起來更像是一個比咆哮的一個問題? –

回答

0

我假設你正在使用JNDI獲取遠程EJB。根據JNDI規範,Context具有相近的方法。 http://docs.oracle.com/javase/6/docs/api/javax/naming/Context.html

標準庫應該實現這個關閉方法並使用它,如下面的代碼所示。從GenericURLContext.java

代碼片段 -

public Object lookup(String name) throws NamingException { 
    ResolveResult res = getRootURLContext(name, myEnv); 
    Context ctx = (Context)res.getResolvedObj(); 
    try { 
     return ctx.lookup(res.getRemainingName()); 
    } finally { 
     ctx.close(); 
    } 
} 

參考 -

http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7-b147/com/sun/jndi/toolkit/url/GenericURLContext.java#GenericURLContext.lookup%28java.lang.String%29

相關問題