在用EJB3.0 API進行設計的時候,開發者主要使用企業bean作為主要的設計結構.
企業bean類的bean類型必須被聲明.可以用元數據注釋,也可以用部署描述符.
在EJB3.0 API下,企業bean的業務接口是普通的java接口,而不是EJBObject或者EJBLocalObject接口.
Session beans和 message-driven beans需要一個業務接口.一個message-driven bean的業務接口一般是通過被使用的消息類型來定義的(比如:javax.jms.MessageListener in the case of JMS).業務接口是不能用來為實體bean定義的.
這個bean必須實現它的業務接口.它可能有不止一個業務接口.規則如下:
如果一個bean實現了一個單一的接口,而這個接口又假設是這個bean的業務接口.這個業務接口將是一個本地接口,除非這個接口被通過在bean或接口上用Remote標記注釋或通過部署注釋符來定義成遠端接口.
一個bean被允許有多于一個的接口,如果一個bean有多于一個的接口-除去下面列舉的接口:任何bean的業務接口必須通過在bean或者接口用Remote或Local注釋或者通過部署描述符來明確指定一個業務接口.
當考慮一個bean是否有多于一個接口的時候,下面接口將被排除:java.io.Serializable,java.io.externalizable以及任何被javax.ejb包定義的接口.
一個業務接口不需要擴展javax.ejb.EJBObject或者javaxejb.EJBLocalObject.