分布对象技术PPT9.pdf
文本预览下载声明
第9章EJB高级特性
9.1
资源管理与EJB环境
2
例子背景
定义一个简单的session bean,提供简单
的币值换算的功能。
币值换算要用到汇率,汇率是一个会经常变化
的值,因此将汇率声明为环境项目(
Environment Entry),在部署时可以修改汇
率,bean提供服务时根据EJB环境中的汇率值
进行币值换算。
编写Remote接口
package FlexConverter;
import javax.ejb.*;
import java.rmi.*;
public interface Converter extends EJBObject
{
public double dollarToYen(double dollars) throws RemoteException;
public double yenToEuro(double yen) throws RemoteException;
}
定义了两个方法进行币值换算
dollarToYen:美元到日元换算
yenToEuro :日元到欧元换算
Home接口
package FlexConverter;
import java.io.Serializable;
import java.rmi.RemoteException;
import javax.ejb.*;
import javax.naming.*;
public interface ConverterHome extends EJBHome
{
public Converter create() throws RemoteException, CreateException;
}
定义了一个create方法
返回Converter类型
编写Session Bean类
public class ConverterBean implements SessionBean{
public double dollarToYen(double dollars){
Context initCtx, myEnv;
Double dollarsToYen = null;
try{
initCtx = new InitialContext();
myEnv = (Context)initCtx.lookup(java:comp/env);
dollarsToYen = (Double)myEnv.lookup(dollarsToYen);
}catch(NamingException ne){
ne.printStackTrace();
}
return dollarsToYen.doubleValue() * dollars;
}
public double yenToEuro(double yen){
//类似dollarToYen的实现
} 商业方法实现:
public ConverterBean() {} 从E
显示全部