Version:
Install
Maven
xml
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-upload-flow</artifactId>
</dependency>Import
java
import com.vaadin.flow.component.upload.Upload;
import com.vaadin.flow.component.upload.receivers.MultiFileMemoryBuffer;Variants
Single File Mode
java
MultiFileMemoryBuffer buffer = new MultiFileMemoryBuffer();
Upload upload = new Upload(buffer);
upload.setMaxFiles(1);
upload.setDropAllowed(true);
upload.addSucceededListener(event -> {
String fileName = event.getFileName();
InputStream inputStream = buffer.getInputStream(fileName);
// process file
});Multiple File Mode
java
MultiFileMemoryBuffer buffer = new MultiFileMemoryBuffer();
Upload upload = new Upload(buffer);
upload.setMaxFiles(5);
upload.setDropAllowed(false);File Type Restriction
java
MultiFileMemoryBuffer buffer = new MultiFileMemoryBuffer();
Upload upload = new Upload(buffer);
upload.setAcceptedFileTypes("application/pdf", "image/png", "image/jpeg");
upload.setMaxFileSize(5 * 1024 * 1024); // 5 MB