📄 ejbcommon.java
字号:
package employee;import java.util.*;import javax.naming.*;import javax.ejb.*;import javax.rmi.PortableRemoteObject;import javax.naming.InitialContext;import javax.naming.NamingException;import weblogic.jndi.Environment;import java.sql.*;import javax.sql.*;public class EjbCommon{ //实体bean名称 public static final String E_EMPLOYEE_JNDI = "EbnEmployee"; //会话bean名称 public static final String S_EMPLOYEE_JNDI = "SbnEmployee"; //数据源JNDI名称 public static final String DATASOURCE_JNDI = "Ora817"; private static Context context = null; //获取通信上下文 protected static Context getInitialContext() throws NamingException { Properties properties = null; try { properties = new Properties();//设置初始化通信上下文工厂 properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); return new InitialContext(properties); } catch(NamingException e) { throw e; } } //取得会话bean的home接口,会话bean的接口是远程的(不是local) public static Object getRemoteEJBHome(String lookupRemoteName, Class homeClass) throws NamingException { try { if (context==null) {context = getInitialContext();} Object home=PortableRemoteObject.narrow(context.lookup(lookupRemoteName),homeClass);//指向主接口 return home; } catch (NamingException ne) {throw ne;} } //取得实体bean的home接口,实体bean的接口是本地的(local) public static Object getLocalEJBHome(String lookupRemoteName) throws NamingException { try { if (context==null){context = getInitialContext();} Object home = context.lookup(lookupRemoteName); return home; } catch (NamingException ne){throw ne;} } //获取本地数据库连接 public static Connection getLocalConnection() throws NamingException, SQLException { Connection connection=null; try { if ( context == null ){context = getInitialContext();} DataSource datasource=(DataSource)context.lookup( DATASOURCE_JNDI );//检索数据源JNDI connection = datasource.getConnection(); return connection; } catch (NamingException ex) {throw ex;} catch (SQLException ex) {throw ex;} } //获取远程数据库连接,好像不需要用它 public static Connection getRemoteConnection() throws NamingException, SQLException { Connection connection=null; try { if (context==null) { context = getInitialContext();} DataSource datasource = (DataSource)PortableRemoteObject.narrow(context.lookup(DATASOURCE_JNDI),DataSource.class); connection=datasource.getConnection(); return connection; } catch (NamingException ne) {throw ne;} catch (SQLException e) {throw e;} } public EjbCommon() {}}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -