[英]How to inject a network file resource with Spring?
我怎么能告诉Spring
该资源应该是一个网络资源,并让它相应地自动装配?
@Value("\\MY-MACHINE\thefile.txt")
private Resource file;
结果:
Caused by: java.io.FileNotFoundException: class path resource [MY-MACHINE\thefile.txt] cannot be resolved to URL because it does not exist
我假设你的应用程序部署在Windows上。 我没有任何Windows工作站来测试它,但据我记得这是它的方式:
创建指向您的网络位置的符号链接:
mklink /DC:\\my-machine \\\\MY-MACHINE\\
用绝对路径引用这个符号链接:
@Value("file:///C:/my-machine/thefile.txt")
private Resource file;
似乎没有人知道,我发现使用双斜线是必要的,如:
@Value("\\\\MY-MACHINE\\thefile.txt")
private Resource file;
在某些情况下,您可能需要一个file:
语句,例如: file:\\\\\\\\MY-MACHINE\\\\thefile.txt"
这是使用classpath
的最简单方法
import org.springframework.core.io.Resource;
@Value("classpath:<path to file>")
private Resource file;
访问Windows共享上的文件无法直接使用。 有关如何执行此操作的详细信息,请参阅使用java连接到Windows中的共享文件夹 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.