Java 我可以使用servlet或jsp代码获取eclipse项目路径吗?
为什么我要走这条路?而不是我想得到下面的路径,这是我需要的Java 我可以使用servlet或jsp代码获取eclipse项目路径吗?,java,jsp,servlets,jakarta-ee,Java,Jsp,Servlets,Jakarta Ee,为什么我要走这条路?而不是我想得到下面的路径,这是我需要的 C:\Users\Stark\Documents\Eclipse IDE\Demo 如何解决这个问题?我需要这个项目的位置上传到这个位置我的文件,所以帮助我 之所以会出现“奇怪”路径,很简单,因为您使用的是Eclipse。 当您在Eclipse上运行应用程序时,Eclipse端将创建新路径并在那里运行您的应用程序。这就是为什么“getRealPath(“/”)会给你提供奇怪的路径,因为你的应用程序现在运行在一个临时文件夹上 Eclip
C:\Users\Stark\Documents\Eclipse IDE\Demo
如何解决这个问题?我需要这个项目的位置上传到这个位置我的文件,所以帮助我 之所以会出现“奇怪”路径,很简单,因为您使用的是Eclipse。 当您在Eclipse上运行应用程序时,Eclipse端将创建新路径并在那里运行您的应用程序。这就是为什么“getRealPath(“/”)会给你提供奇怪的路径,因为你的应用程序现在运行在一个临时文件夹上 Eclipse为什么要这样做?以下是我的想法
我希望我的回答能对您有所帮助。为什么您的Web应用程序需要该路径?当webapp部署用于生产时,它将不会有它。仅供参考:不要对Java代码使用代码段。代码片段仅用于JavaScript。是的,我不需要那个路径,但我必须上传应该在项目文件夹中的文件,对吗?那么如何使用相对路径上传这些文件?但在netbeans中,它工作正常,它显示正确的绝对路径,但eclipse显示.metadata文件夹。您不能上传到项目文件夹。正如我已经说过的,当您将代码部署到服务器时,没有项目文件夹。您甚至不能在java文件或资源文件旁边上传,因为它们都在jar文件或war文件中。由webapp创建的任何文件(包括上载的文件)都必须存储在项目文件夹/部署位置之外的其他位置。您的回答很好,但我无法获取上载的文件(例如:我上载了图像文件,我只是尝试使用查看图像,但显示了“您无法访问本地文件”的错误)为什么会这样?
<%=session.getServletContext().getRealPath("/") %>
<%
String path= session.getServletContext().getRealPath("/");
FileOutputStream file = new FileOutputStream(path+"\\testingfile.txt");
%>
<%
Properties prop = new Properties();
InputStream input = null;
try {
input = new FileInputStream("config.properties");
// load a properties file
prop.load(input);
// get the property for upload path
String path=prop.getProperty("path.upload");
FileOutputStream file = new FileOutputStream(path+"\\testingfile.txt");
//TODO:rest of your logic codes will come here.
} catch (IOException ex) {
ex.printStackTrace();
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
%>
path.upload=C:\Users\Stark\Documents\Eclipse IDE\Demo