我查看了 Java EE 6 教程中的一个 EJB 示例。在这个例子中,我想知道我是否可以只使用 @Singleton 而不是 @Stateless ?
package converter.ejb;
import java.math.BigDecimal;
import javax.ejb.*;
@Stateless
public class ConverterBean {
private BigDecimal yenRate = new BigDecimal("83.0602");
private BigDecimal euroRate = new BigDecimal("0.0093016");
public BigDecimal dollarToYen(BigDecimal dollars) {
BigDecimal result = dollars.multiply(yenRate);
return result.setScale(2, BigDecimal.ROUND_UP);
}
public BigDecimal yenToEuro(BigDecimal yen) {
BigDecimal result = yen.multiply(euroRate);
return result.setScale(2, BigDecimal.ROUND_UP);
}
}
在我看来像一个 Util 方法。
如果我不使用 EJB,我可以在此 ConverterBean 上使用静态方法。
还有一个问题。我知道这是一个简单的示例,但是如果我使用示例中的 servlet 中的此代码,为什么只为此使用 EJB?