java工程部署在服务器上,要将本服务器的文件夹备份到另外一台服务器中,用hutools怎么写
时间: 2023-05-13 13:04:46 浏览: 81
您可以使用Hutools中的FileUtil.copy方法来实现文件夹备份。具体代码如下:
FileUtil.copy("源文件夹路径", "目标文件夹路径", true);
其中,第一个参数是源文件夹路径,第二个参数是目标文件夹路径,第三个参数表示是否覆盖目标文件夹中的文件。如果为true,则会覆盖,否则不会覆盖。
相关问题
要将本服务器的文件夹备份到另外一台服务器中,用java实现
你可以使用 Java 的 SSH 库,比如 JSch,来连接到另外一台服务器并执行备份操作。以下是一个简单的示例代码:
```java
import com.jcraft.jsch.*;
public class Backup {
public static void main(String[] args) {
String host = "backup-server.example.com";
String username = "backup-user";
String password = "backup-password";
String sourceFolder = "/path/to/source/folder";
String destinationFolder = "/path/to/destination/folder";
try {
JSch jsch = new JSch();
Session session = jsch.getSession(username, host, 22);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
ChannelSftp sftp = (ChannelSftp) channel;
sftp.put(sourceFolder + "/*", destinationFolder);
sftp.exit();
session.disconnect();
} catch (JSchException | SftpException e) {
e.printStackTrace();
}
}
}
```
在上面的代码中,你需要将 `host`、`username`、`password`、`sourceFolder` 和 `destinationFolder` 替换为你自己的值。这个代码会将 `sourceFolder` 中的所有文件和文件夹备份到 `destinationFolder` 中。
用java写一个 将本机的文件夹传到另外一台服务器上并创建文件夹
可以使用 Java 的 FTPClient 类来实现将本机的文件夹传到另外一台服务器上并创建文件夹的功能。以下是示例代码:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
public class FTPUploader {
public static void main(String[] args) {
String server = "ftp.example.com";
int port = 21;
String user = "username";
String pass = "password";
String localFolder = "C:/local/folder";
String remoteFolder = "/remote/folder";
FTPClient ftpClient = new FTPClient();
try {
ftpClient.connect(server, port);
ftpClient.login(user, pass);
ftpClient.enterLocalPassiveMode();
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
File localDir = new File(localFolder);
if (localDir.isDirectory()) {
ftpClient.makeDirectory(remoteFolder);
ftpClient.changeWorkingDirectory(remoteFolder);
for (File localFile : localDir.listFiles()) {
String remoteFile = localFile.getName();
FileInputStream inputStream = new FileInputStream(localFile);
ftpClient.storeFile(remoteFile, inputStream);
inputStream.close();
}
}
ftpClient.logout();
} catch (IOException ex) {
ex.printStackTrace();
} finally {
if (ftpClient.isConnected()) {
try {
ftpClient.disconnect();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
}
```
在上面的代码中,需要替换以下变量的值:
- `server`:FTP 服务器的地址。
- `port`:FTP 服务器的端口号。
- `user`:FTP 服务器的用户名。
- `pass`:FTP 服务器的密码。
- `localFolder`:本地文件夹的路径。
- `remoteFolder`:远程文件夹的路径。
该代码使用 Apache Commons Net 库中的 FTPClient 类来连接 FTP 服务器,并使用 makeDirectory() 方法创建远程文件夹。然后,使用 changeWorkingDirectory() 方法进入远程文件夹,并使用 storeFile() 方法将本地文件上传到远程服务器。最后,使用 logout() 方法断开 FTP 连接。
阅读全文