linux下java开发设置路径

linux下java开发设置路径,java,linux,web-services,file,path,Java,Linux,Web Services,File,Path,我开发了一个简单的Web服务,可以在linux中将图像上传到计算机。它在保存文件位置时遇到了一些问题。当我到达图像顶点时,它变成无响应,并且我已经导入了所有require包 @Path("/files") public class V1_status { /** * Upload a File */ @POST @Path("/upload") @Consumes(MediaType.MULTIPART_FORM_DATA) public String uploadFile(

我开发了一个简单的Web服务,可以在linux中将图像上传到计算机。它在保存文件位置时遇到了一些问题。当我到达图像顶点时,它变成无响应,并且我已经导入了所有require包

@Path("/files")
public class V1_status {



/**
 * Upload a File
 */

@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public String uploadFile(
        @FormDataParam("file") InputStream uploadedInputStream,
        @FormDataParam("file") FormDataContentDisposition fileDetail){


    saveToDisk(uploadedInputStream, fileDetail);

    return"File uploaded successfully!";

}

// save uploaded file to a defined location on the server
private void saveToDisk(InputStream uploadedInputStream,FormDataContentDisposition fileDetail
        ) {

    String uploadedFileLocation= "/home/fairlady/Pictures" +fileDetail.getFileName();


    try {
        OutputStream out= new FileOutputStream(new File(uploadedFileLocation));

        int read = 0;
        byte[] bytes = new byte[1024];

        out= new FileOutputStream(new File(uploadedFileLocation));
        while ((read = uploadedInputStream.read(bytes)) != -1) {
            out.write(bytes, 0, read);
        }
        out.flush();
        out.close();
    } catch (IOException e) {

        e.printStackTrace();
    }

}
}

在这行中

String uploadedFileLocation= "/home/fairlady/Pictures" +fileDetail.getFileName();
图片后缺少正斜杠

试一试


在保存文件位置时出现了一些问题。
但是您还没有告诉我们这是什么。除了任何其他注释或答案之外,从安全角度来看,此代码非常不安全。这几乎是教科书上对路径遍历攻击的定义。为了您自己的利益,不要在任何地方部署此代码。
String uploadedFileLocation= "/home/fairlady/Pictures/"+fileDetail.getFileName();