vertxを使ってファイルコードをアップロードしてPostgreSQLのテーブルに保存する必要があります。しかし、ファイルがマルチパートでアップロードされ、非同期にバイト配列を取得できません。私のコードを次に示しファイルをvertxでアップロードし、バイト配列に変換してデータベースに挿入します
public static void uploadLogo(RoutingContext routingContext) {
HttpServerRequest request = routingContext.request();
HttpServerResponse response = routingContext.response();
request.setExpectMultipart(true);
request.uploadHandler(upload -> {
upload.handler(chunk -> {
byte[] fileBytes = chunk.getBytes();
});
upload.endHandler(endHandler -> {
System.out.println("uploaded successfully");
});
upload.exceptionHandler(cause -> {
request.response().setChunked(true).end("Upload failed");
});
});
}
は、ここで私は、一度にバイトfileBytes
内の配列が、一部のみを取得します。非同期で動作するので、次のバイト配列を追加する方法を理解していません。ファイル全体のバイト配列を得る方法はありますか?
しかし、FileUploadにはバイト配列を取得するメソッドがありません。それはファイルを書く方法しかありません – nilesh
FileUploadはあなたが使うことができるアップロードされたファイルの名前を持っています。私はあなたのための例を追加しました。 –