📄 servicelocator.java
字号:
/**
* @作者: 胡俊
* @创建时间: 2008-03-05
* @更新时间: 2008-03-05
* @描述:
*
*/
package com.nari.pmos.proxy.client;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;
import com.nari.pmos.proxy.common.InvokeEnv;
/**
* @author hujun
*
* TODO To change the template for this generated type comment go to Window -
* Preferences - Java - Code Style - Code Templates
*/
public class ServiceLocator {
private String usrAccount = "";
private String usrPwd = "";
private InvokeEnv invokeEnv = null;
/**
*
*/
public ServiceLocator() {
super();
// TODO Auto-generated constructor stub
}
public void setUsrAccount(String usrAccount) {
this.usrAccount = usrAccount;
}
public void setUsrPwd(String usrPwd) {
this.usrPwd = usrPwd;
}
public void setInvokeEnv(InvokeEnv invokeEnv) {
this.invokeEnv = invokeEnv;
}
// 创建ejb代理(兼容旧版本)
public Object locateProxy(Class classInterface) throws Exception {
return locateEjb(classInterface);
}
// 创建ejb代理
public Object locateEjb(Class classInterface) throws Exception {
// 创建句柄
InvocationHandler handler = new ProxyHandler(classInterface, invokeEnv,
usrAccount, usrPwd);
// 创建远程代理
Object proxy = Proxy.newProxyInstance(classInterface.getClassLoader(),
new Class[] { classInterface }, handler);
return proxy;
}
public Object locateBean(Class classInterface) throws Exception {
// 创建句柄
InvocationHandler handler = new ProxyHandler(classInterface, invokeEnv,
usrAccount, usrPwd);
// 创建远程代理
Object proxy = Proxy.newProxyInstance(classInterface.getClassLoader(),
new Class[] { classInterface }, handler);
return proxy;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -