gpt4 book ai didi

java - 将文件从基于 Web 的应用程序上传到 Linux 服务器

转载 作者:太空宇宙 更新时间:2023-11-04 04:06:25 27 4
gpt4 key购买 nike

在得知我将上传路径指向的机器是 Linux 机器后,我的代码似乎无法工作。

我的用例是,用户登录到网络应用程序,选择要上传的文件,然后单击上传按钮。是否可以使用适当的 sshscp 库(如果有)直接从 Java 代码到 Linux 服务器执行此操作?

编辑:这是我当前的代码。

@Override
public void fileTransfer(File uploadedFile, String fileName, String pathTemp) {

File destFile = new File( pathTemp + File.separator + fileName);
try{
FileUtils.copyFile(uploadedFile, destFile);

String getTempFile = destFile.toString();
String tempPath = getTempFile.replace("\\", "\\\\");
File tempFile = new File(tempPath); // 1st file
String tempFileName = tempFile.getName();
String fileSave = getUploadPathSave().replace("\\", "\\\\");
tempFile.renameTo(new File(fileSave + tempFileName));
} catch (IOException ex) {
System.out.println("Could not copy file " + fileName);
ex.printStackTrace();
}
}

最佳答案

如果您的应用程序仅部署在一个地方(而不是大规模分发),最简单的方法是:

  1. 在 Linux 机器上创建 samba 共享

  2. 将 samba 共享映射到 Windows 计算机上的逻辑驱动器

  3. 使用 java 函数进行常规文件复制。

注意: renameTo 在驱动器之间不起作用。您需要将输入流复制到输出流,或者更好的是,使用 apache commons-io 函数。

关于java - 将文件从基于 Web 的应用程序上传到 Linux 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21015082/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com