03.01 Spring开发者 :获取上下文的三种方式,你都掌握了吗?

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

本文将介绍在Spring框架项目代码中访问Spring Framework框架中应用程序上下文Application Context的三种不同方式。

方式一

在你的类中你实现了ApplicationContextAware接口,像这样的代码:

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

方式二

如果是在Java Servlet中,则可以使用以下方式:

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

这里会有疑问,我们该如何选择以上两种方法?答案是:根据你项目中Spring调用的方式。

使用方式一时:当你调用Spring时使用DispatcherServlet链接。然后将解析ApplicationContextAware的实现并调用setApplicationContext()方法来赋值设置上下文ApplicationContext。

在web.xml中:

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

如果你没有使用DispatcherServlet,并且时使用Listener初始化Spring,并且你有自己的Servlet处理Request \\ Response,则使用方式二

下面是web.xml在这种情况下的样子。

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

这就能说明为什么有时即使你已经实现了ApplicationContextAware接口,你的setter方法也不会被调用。

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

方式三

使用静态方法创建以下类以获取您的上下文ApplicationContext:

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

然后在spring bean配置文件中添加以下内容:

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

在你的类中就可以直接这样获取,

Spring开发者 :获取上下文的三种方式,你都掌握了吗?

Spring开发者 :获取上下文的三种方式,你都掌握了吗?


分享到:


相關文章: