Java EE6:使用@ local,@ remote注释接口或bean是否重要?

时间:2013-05-28 19:16:27

标签: java-ee-6 ejb-3.1

我看到在EJB 3中,希望同时具有本地和远程接口。 然后你创建一个实现这些接口的bean。 @remote注释的位置是否重要 - 无论是在接口本身(第一个示例)还是在实现接口的bean(第二个示例)上?这不仅仅是风格问题,是吗?有人可以解释更深层的含义吗?

@Remote
public interface CarSalesRemote {
    void getSales();
}

@Stateless
public class CarSales implements CarSalesRemote {

    @Override
    public void getsales() {}
}

对战

public interface CarSalesRemote {
     void getSales();
}

@Stateless
@Remote
public class CarSales implements CarSalesRemote {

    @Override
    public void getsales();
}

1 个答案:

答案 0 :(得分:1)

然而,请注意,在注释bean类时,您必须在注释 @Remote(CarSalesRemote)上指定接口,如Java EE教程所述:

  

bean类可以实现多个接口。如果bean类实现了多个接口,则必须显式注释业务接口@Local或@Remote,或者必须通过使用@Local或@Remote装饰bean类来指定业务接口

@Remote(InterfaceName.class)
public class BeanName implements InterfaceName { ... }

VS。

@Remote
public interface InterfaceName { ... }