我正在尝试使用FTP4J(在代码示例中称为客户端)为 FTP 服务器制作监控应用程序。
它连接到 FTP,登录,在本地创建文件,上传文件,下载文件,验证文件是否相同,清理 ftp 和本地文件并断开连接。
所有这些都已经完成,但我的问题是如何最好地记录发生的事情并在检测到错误时中断?
我能想到的简单解决方案是制作一个布尔值,显示之前的步骤是否成功,并且只有在他们成功的情况下才执行下一步。
StringBuilder sb = new StringBuilder();
boolean noError = true;
// Connect to FTP
try {
client.connect(hostname, port);
} catch (Exception e) {
noError = false;
sb.append("failed to connect<br>");
}
//Logging in to FTP
if(noError) {
try {
client.login(username, password);
} catch (Exception e) {
noError = false;
sb.append("failed to login<br>");
}
}
...
// Close connection
if(client.isConnected()) {
try {
client.disconnect(true);
} catch (Exception e) {
sb.append("failed to disconnect<br>");
}
}
我能想到的另一个解决方案是嵌套的 try/catch,但看起来更糟,有没有更好的方法来做到这一点?