[英]Inject Singleton Session Bean into a Stateless Session Bean
通过在无状态会话Bean中使用Singleton会话Bean,是否允许(和良好实践)在我们的应用程序中保存一些共享信息?
SSB将被注入SLSB。
@Stateless
public class MySLSB {
@Inject
MySSB mySSB;
-
@Singleton
@Lock(READ)
public class MySSB implements Serializable {
private static final long serialVersionUID = 1L;
它不仅仅是允许的。 在无状态或有状态EJB中使用Singleton注入将允许您在SLSB中调用SSB上的业务方法。 其中一个重要的优点是使用SSB并发功能。 在您的示例中,对SSB的所有方法调用都将被锁定在Read上,这意味着所有线程都将在读取模式下访问SSB方法,除非线程在写入时持有锁定。
是的,这是允许的,我认为这是一个好习惯。 在我正在使用的项目中,存储从文件中读取的全局属性。 这是一个很好的做法,因为你将它存储在一个地方,如果你需要这些信息,那么你只需要注入你的单例bean。 我认为这是好莱坞原则的好例子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.