ejbhomefactory.java
来自「100多M的J2EE培训内容」· Java 代码 · 共 50 行
JAVA
50 行
package com.borland.training.meetings.sessions;import javax.naming.*;import java.util.*;import javax.ejb.*;import com.borland.training.meetings.entities.*;import com.borland.training.meetings.sessions.*;public class EJBHomeFactory { private static EJBHomeFactory instance = null; private Context initialContext; private Map ejbHomes; private EJBHomeFactory() throws NamingException { initialContext = new InitialContext(); ejbHomes = Collections.synchronizedMap(new HashMap()); } public static EJBHomeFactory getInstance() throws NamingException { if(instance == null) { instance = new EJBHomeFactory(); } return instance; } public EJBLocalHome lookupByLocalEJBReference(String ejbReferenceComponent) throws NamingException { java.lang.Object home = ejbHomes.get(ejbReferenceComponent); if(home == null) { home = initialContext.lookup("java:comp/env/ejb/" + ejbReferenceComponent); ejbHomes.put(ejbReferenceComponent, home); } return (EJBLocalHome) home; } public EJBHome lookupByRemoteEJBReference(String ejbReferenceComponent, Class homeClass) throws NamingException { java.lang.Object home = ejbHomes.get(ejbReferenceComponent); if(home == null) { java.lang.Object obj = initialContext.lookup("java:comp/env/ejb/" + ejbReferenceComponent); home = javax.rmi.PortableRemoteObject.narrow(obj, homeClass); ejbHomes.put(ejbReferenceComponent, home); } return (EJBHome) home; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?