Ejb中的@Local和@LocalBean的区别
1 、在ejb3.1之后引入了@LocalBean的注解,我们之前(ejb3.0)使用的@Local,在javax.ejb包下,这个包是javaEE 7api的,在java7 seapi中是找不到的,
2 、@LocalBean的用途:当你开发一个ejb会话Bean没有实现任何接口,但你又想暴露给其他对象访问的时候,那么你就可以使用@LocalBean,当然你如果不喜欢写很多接口的话,你也可以使用这种方式代替你原有的@Local标注的接口,然后在写一个实现类的那种模式。
3 、 那我们怎么用@LocalBea呢?给出一个代码案列如下:
@Singleton @LocalBean public class MyNoInterfaceBean { public void sample() { } }4 、和使用原来的@Local方式对比一下:
@Local public interface LocalView { public void sample(); } @Singleton public class MyLocalBean implements LocalView { public void sample() { } }5 、在调用都用@EJB注解,如:
1 种使用@LocalBean方式
@EJB
Private MyNoInterfaceBean myNoInterfaceBean;
2 种使用@Local方式
@EJB
Private LocalView localView;
时间: 2024-09-27 22:34:48