完成支付模块业务开发
Dubbo特性:隐式参数、参数验证
FTP 业务 上传
public boolean uploadFile(String fileName, File file) {
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(file);
initFTPClient();
ftpClient.setControlEncoding("utf-8");
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.enterLocalPassiveMode();
ftpClient.changeWorkingDirectory(this.getUploadPath());
ftpClient.storeFile(fileName, fileInputStream);
return true;
} catch (Exception e) {
e.printStackTrace();
log.error("上传失败", e);
return false;
} finally {
try {
fileInputStream.close();
ftpClient.logout();
} catch (IOException e) {
e.printStackTrace();
}
}
}
本地存根 静态代理 stub 只能捕获 RPCException
本地伪装 服务降级 mock 只能捕获 RPCException
隐式参数 全局传递 key-value模式
事务
- 原子性 Atomicity
- 一致性 Consistency
- 隔离性 Isolation
- 持久性 Durability
头疼
TCC