3.15.3 通过便捷的方式访问底层资源

为了最佳使用和理解应用程序上下文,推荐大家通过Spring的Resource abstraction资源抽象熟悉他们,如第4章,资源一节所述。

应用程序上下文是一个ResourceLoader,可以用来加载Resources。一个Resource本质上是JDK类java.net.URL的一个扩展,实际上Resource的实现类中大多含有java.net.URL的实例。Resource几乎能从任何地方透明的获取底层资源,可以是classpath类路径、文件系统、标准的URL资源及变种URL资源。如果资源定位字串是简单的路径,没有任何特殊前缀,就适合于实际应用上下文类型。

可以配置一个bean部署到应用上下文中,用以实现特殊的回调接口,ResouceLoaderAware,它会在初始化期间自动回调。可以暴露Resource的type属性,这样就可以访问静态资源;静态资源可以像其他properties那样被注入Resource。可以使用简单的字串路径指定资源,这要依赖于特殊的JavaBean PropertyEditor,该类是通过context自动注册,当bean部署时候它将转换资源中的字串为实际的资源对象

提供给ApplicationContext构造函数的一个或多个位置路径实际上是资源字符串,并且以简单形式对特定上下文实现进行适当处理。 ClassPathXmlApplicationContext将一个简单的定位路径视为类路径位置。你还可以使用带有特殊前缀的定位路径,这样就可以强制从classpath或者URL定义加载路径,而不用考虑实际的上下文类型。

results matching ""

    No results matching ""