【问题标题】:EJB 3.0 Business InterfacesEJB 3.0 业务接口
【发布时间】:2014-06-12 09:12:16
【问题描述】:
在我的时区早上好。
我正在准备 EJB 认证考试,我对业务接口有疑问。在我正在阅读的书中说:
如果需要,您可以应用@Local、@Remote 或@WebService
bean类中的注解,无需实现业务
界面
这意味着如果我编码:
@Remote(BidManager.class)
@Stateless
public class BidManagerBean {
...
}
编译器(容器)会为我生成业务接口吗?
提前致谢
最好的问候
【问题讨论】:
标签:
java
interface
containers
ejb-3.0
【解决方案1】:
不,编译器/容器不会为您生成 BidManager 界面。您需要编写接口。假设 BidManager 有一个名为 someMethod() 的方法,那句话是说你可以这样做:
@Stateless
@Local(BidManager.class)
public class BidManagerBean {
public void someMethod() { ... }
}
...而不是需要实现接口:
@Stateless
public class BidManagerBean implements BidManager {
public void someMethod() { ... }
}
创建 BidManager 代理时,容器将确保 someMethod 将被代理,即使 bean 并未实际实现接口。