• 测试技术
  • 博客
  • 视频
  • 开源
  • 论坛
  • 沙龙
  • 下载
  • 杂志
  • 招聘

您的位置:您的位置:软件测试技术门户 >> 软件测试技术 >> 开发语言 >> Java >> 查看资讯

字号: | 推荐给好友 上一篇 | 下一篇

J2EE基础:Java EJB容器存取和实现的说明

发布: 2008-5-12 11:12 | 作者: 不详 | 来源: 不详 | 查看: 51次 | 进入领测软件测试网论坛讨论

领测软件测试网

}} r ?]eS 软件测试技术门户0QoS f,Zz.[/`:Z


S:v hu%~A#@有些情况下,要载入ApplicationContext以使用EJB组件, ContextJndiBeanFactoryLocator的默认实现基本上足够了, 不过,当ApplicationContext需要载入多个bean,或这些bean初始化所需的时间或内存 很多的时候(例如Hibernate的SessionFactory的初始化),就有可能出问题,因为 每个EJB组件都有自己的副本。这种情况下,用户会想重载 ContextJndiBeanFactoryLocator的默认实现,并使用其它 BeanFactoryLocator的变体,例如ContextSingleton 或者BeanFactoryLocator,他们可以载入并共享一个 BeanFactory或ApplicationContext来为多个EJB组件或其它客户端所公用。这样做 相当简单,只需要给EJB添加类似于如下的代码: 软件测试技术门户-VCr)P7?,H0qs

软件测试技术门户[&R A6SC+KY

软件测试技术门户{ J@ e#`;JDi
/**

g`-m6M-`?

*]tX+f+u/E^#p* Override default BeanFactoryLocator implementation

e+x*Hp ]@,n3Y

HP^,yH(F'?[&n*

L/U"f1I!]hU 软件测试技术门户})z!N9?ql |-Y zr

* @see javax.ejb.SessionBean#setSessionContext(javax.ejb.SessionContext) 软件测试技术门户#gVuz"eVU @9b/A.^X

软件测试技术门户C%fL |PBX,v,K

*/

8} Q7}.~ EF5ez

jqs{ icn_Spublic void setSessionContext(SessionContext sessionContext) { 软件测试技术门户*p NB$aF\UR-G

软件测试技术门户7U i)K @ j

super.setSessionContext(sessionContext);

@j$S*qi].C8z 软件测试技术门户1k)J`@ N"iceBx$u

setBeanFactoryLocator(ContextSingletonBeanFactoryLocator.getInstance());

s,c|x1`!I%[$_5Lw 软件测试技术门户O^m;_%y:Ii

setBeanFactoryLocatorKey(ServicesConstants.PRIMARY_CONTEXT_ID); 软件测试技术门户t @]9L~K

$K.nbpD B} 软件测试技术门户 M&Q;f&`$v^{

软件测试技术门户.EuQEZU4A+B9c]

 

W7eV1N"C,F5W2B,j 软件测试技术门户Hkd@!O


I|2yu&T,DA软件测试技术门户9|