我有一個applicationScope託管bean,它將一系列關於一系列應用程序的信息加載到一個Map中。然後下面的方法是bean的一部分:何時需要回收?
public Database getAppDB() {
Database appDB = null;
try{
Session s = ExtLibUtil.getCurrentSession();
serverName = s.createName(s.getCurrentDatabase().getServer()).getCommon();
appDB = s.getDbDirectory(serverName).openDatabaseByReplicaID(this.getAppRepID());
return appDB;
}catch (NotesException e){
System.out.println(e.toString());
return appDB;
}
}
現在這個方法聲明瞭兩個對象(Session和appDB)。不知道它們是否需要在返回之前回收,如果是的話,那麼應該如何做,因爲appDB是返回的值。會議可以輕鬆回收。 現在顯然如果我叫一些SSJS這種方法:
var thisDB:NotesDatabase = appProps[ssApplication].appDB;
我需要在SSJS回收thisDB。
另外,如果我做SSJS是這樣的:
var cNames = appProps[ssApplication].appDB.getView("vwFTSearch").getColumnNames();
我假設,沒有什麼回收?
看看這裏http://stackoverflow.com/a/17216904/2065611和http://stackoverflow.com/a/11160925/2065611 – 2015-02-06 16:26:30