在我的项目中,我当前使用直接链接,这些链接存储上传到服务器的特定文件,这些位置都在项目的文件夹中(文件上传)
destinationPDF=D:/Documents/NetBeansProjects/printing~subversion/fileupload/web/resources/pdf/
destination=D:/Documents/NetBeansProjects/printing~subversion/fileupload/Uploaded/
fileList =D:/Documents/NetBeansProjects/printing~subversion/fileupload/web/resources/Directory Files/directoryFiles.txt
但这不是理想的情况,因为我目前正在多台机器上进行测试,并且每台机器都需要不同的路径,所以我想知道是否可以创建一条路径,以便无论它在哪台机器上
最佳答案
只需将其设置为外部可配置即可。有多种方法可以实现这一目标。
在服务器启动期间设置环境变量。
SET UPLOAD_LOCATION=C:\path\to\uploads
它的可用方式如下:
String uploadLocation = System.getenv("UPLOAD_LOCATION");
在服务器启动期间设置 VM 参数。
-Dupload.location="C:\path\to\uploads"
它的可用方式如下:
String uploadLocation = System.getProperty("upload.location");
将其设置为 properties file条目。
upload.location=C:\path\to\uploads
它可以像平常一样使用
Properties
API方式:String uploadLocation = properties.getProperty("upload.location");
属性文件本身的位置实际上本身就是一个完整的问题,这里已经回答了:Where to place and how to read configuration resource files in servlet based application?
无论哪种方式,您都可以轻松引用这些文件,如下所示:
File some = new File(uploadLocation, "some.ext");
关于java - Web 应用程序内的路径不是直接链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14915887/