Roland Barcia 的<提示>: 检验 EJB 3.0 简化 API 规范
2009-10-23 00:00:00 来源:WEB开发网现在我们有一个接口,那么我们如何指定某方法是远程的还是本地的?当然,我们可以使用注解:
@Stateless public class StockBean
@Remote public double getQuote(String symbol)
{
return 100.33;
}
}
您可以对该业务接口或者该 Bean 类本身进行注解。当您选择产生该业务接口的时候,使用 Bean 类上的这些注解将非常有用。在该 EJB 规范草案中没有提及如何指定某方法是否应该被作为 Web 服务来调用;相反,这种情况委托给 JSR 181 处理,它定义了用于 Web 服务的注解。
容器服务
EJB 组件之所以流行,这是因为它对事务管理和安全性的隐性支持。EJB 3.0 规范将使用注解来应用容器服务。这里是一个用户如何在无状态会话上指定事务处理的属性的实例:
@Stateless public class StockBean
{
@TransactionAttribute(TransactionAttributeType.REQUIRESNEW)
public double getQuote(String symbol)
{
return 100.33;
}
}
该注解意味着此方法将会在新的事务中运行。阅读此规范以获取关于不同注解的特定语法和语义的详细内容。容器服务同时也可以使用部署描述符得到应用,尽管当前的规范草案中并没有标明如何来指定。然而,如果两种方法都采用的话,部署描述符将会忽略这些注解。
特殊注解的最终形式在未来的规范草案中可以有所改动。例如,总体上与 J2EE 规范相关的确定的注解可能不再属于 EJB。
回调
什么是回调?在 EJB 3.0 规范发布之前,开发者必须在 Bean 类上实现回调方法,例如 ejbCreate();Bean 类必须要实现所有的方法,而不管是否使用它们。在多数情况下,这些方法的实现是空缺的。
更多精彩
赞助商链接