【发布时间】:2020-11-30 14:24:08
【问题描述】:
我是 Helidon MP 的新手,想知道是否可以通过使用 Helidon MP 创建的 REST 服务将文件上传到 Oracle DB(Blob/Clob 列)。
我可以使用下面的代码在 SpringBoot 中实现相同的要求,接受文件参数作为 MultiPart,我们如何使用 Helidon MP 来实现这一点
@PostMapping("/upload")
public ResponseEntity<ResponseMessage> uploadFile(@RequestParam("file") MultipartFile file) {
String message = "";
try {
storageService.store(file);
message = "Uploaded the file successfully: " + file.getOriginalFilename();
return ResponseEntity.status(HttpStatus.OK).body(new ResponseMessage(message));
} catch (Exception e) {
message = "Could not upload the file: " + file.getOriginalFilename() + "!";
return ResponseEntity.status(HttpStatus.EXPECTATION_FAILED).body(new ResponseMessage(message));
}
}
【问题讨论】:
-
来自“关于”页面:“Helidon 是用于编写微服务的 Java 库的集合......”所以当然有办法做到这一点,但是你需要提供有关您尝试了什么以及您的代码/尝试有什么问题的更多详细信息。
-
您好,我使用 SpringBoot 完成了相同的要求,我可以通过将参数作为 MultipartFile 接受并对其进行相应的处理来实现相同的要求。在 Helidon MP 中,我不确定我们如何接受该文件,因为 @RequestParam 是 SpringBoot 组件。下面的代码显示了我如何使用 SpringBoot 实现相同的目标
-
public ResponseEntity
uploadFile(@RequestParam("file") MultipartFile file) { String message = "";尝试 { storageService.store(file); message = "上传文件成功:" + file.getOriginalFilename(); return ResponseEntity.status(HttpStatus.OK).body(new ResponseMessage(message)); } catch (Exception e) { message = "无法上传文件:" + file.getOriginalFilename() + "!";返回 ResponseEntity.status(HttpStatus.EXPECTATION_FAILED).body(new ResponseMessage(message)); } } -
请通过edit将此信息添加到问题中,而不是cmets。
标签: java oracle rest file helidon