Resources of Spring Framework

- 1 分钟前

Java 语言中如果要通过 HTTP 或 FTP 协议访问文件,可以通过 UML 类编写一些管道代码。‘

同样,如果要在应用程序的类路径下(或者在 servlet 上下文中)读文件,必须要知道该应用程序的跟路径在哪里。因此,需要编写大量模版代码来访问路径,而且,每个用例(URL、类路径、servlet 上下文)的代码都会有所不同。

Spring 的抽象资源(resource abstraction)解决了上述问题。以如下的代码为例:

import org.springframework.core.io.Resource;

public class MyApplication {

    public static void main(String[] args) {
            ApplicationContext ctx = new AnnotationConfigApplicationContext(someConfigClass); // (1)

            Resource aClasspathTemplate = ctx.getResource("classpath:somePackage/application.properties"); // (2)

            Resource aFileTemplate = ctx.getResource("file:///someDirectory/application.properties"); // (3)

            Resource anHttpTemplate = ctx.getResource("https://marcobehler.com/application.properties"); // (4)

            Resource depends = ctx.getResource("myhost.com/resource/path/myTemplate.txt"); // (5)

            Resource s3Resources = ctx.getResource("s3://myBucket/myFile.txt"); // (6)
    }
}
Inger Notes © 2022
rss facebook twitter github gitlab youtube mail spotify lastfm instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora qq quora wechat