如何在非托管对象中获取托管bean?

时间:2011-10-12 09:03:11

标签: java spring

我有一个Logger Bean会被注入到我想要记录的地方:

@Logger
Log log;

关注this博客。

现在我想也能够在非托管对象中使用该记录器bean。如何让此对象知道有一个托管记录器可供使用?

我在某处读过使用ApplicationContext是不好的做法。但也许这是唯一的方法?如果是这样,最好的方法是什么? This似乎是要走的路......?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您无法真正管理bean(通过在applicationContext.xml中声明), 是的,这是两种方式之一。在Web应用程序中,使用WebApplicationContextUtils来获取应用程序上下文。

另一种方法是使用@Configurable与aspectj编织,这将使您的非托管对象 - 管理。但我更喜欢第一种选择。