?? jndihelper.java
字號(hào):
package music.ejb;
import java.rmi.RemoteException;
import java.util.*;
import javax.naming.*;
import javax.servlet.jsp.JspException;
import music.ejb.db.*;
/**
* JndiHelper使Session Bean能夠方便地調(diào)用Entity Bean
*/
public class JndiHelper {
private static Object syn = new Object();
// for local home:
private static final String CATEGORY = "ejb/Category";
private static final String ARTIST = "ejb/Artist";
private static final String ALBUM = "ejb/Album";
private static final String SONG = "ejb/Song";
private static final String ACCOUNT = "ejb/Account";
// for local home:
private static CategoryLocalHome category = null;
private static ArtistLocalHome artist = null;
private static AlbumLocalHome album = null;
private static SongLocalHome song = null;
private static AccountLocalHome account = null;
private static Object lookup(String jndi) {
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
ht.put(Context.PROVIDER_URL, "t3://localhost:7001");
Context ctx = null;
Object obj = null;
try {
ctx = new InitialContext(ht);
obj = ctx.lookup(jndi);
}
catch(NamingException ne) {
// Error log:
System.out.println("-- Exception in static JndiHelper.lookup(" + jndi + ") --");
ne.printStackTrace();
}
finally {
try { ctx.close(); } catch(Exception e) {}
}
return obj;
}
public static CategoryLocalHome getCategoryLocalHome() {
if (category==null) {
synchronized(syn) {
category = (CategoryLocalHome)lookup(CATEGORY);
}
}
return category;
}
public static ArtistLocalHome getArtistLocalHome() {
if (artist==null) {
synchronized(syn) {
artist = (ArtistLocalHome)lookup(ARTIST);
}
}
return artist;
}
public static AlbumLocalHome getAlbumLocalHome() {
if (album==null) {
synchronized(syn) {
album = (AlbumLocalHome)lookup(ALBUM);
}
}
return album;
}
public static SongLocalHome getSongLocalHome() {
if (song==null) {
synchronized(syn) {
song = (SongLocalHome)lookup(SONG);
}
}
return song;
}
public static AccountLocalHome getAccountLocalHome() {
if (account==null) {
synchronized(syn) {
account = (AccountLocalHome)lookup(ACCOUNT);
}
}
return account;
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -