Thursday, March 11, 2021

REST File Upload

 https://www.w3spoint.com/jax-rs-file-upload

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
 
import com.sun.jersey.core.header.FormDataContentDisposition;
import com.sun.jersey.multipart.FormDataParam;
 
 
@Path("/file")
public class UploadFileService {
 @POST
 @Path("/upload")
 @Consumes(MediaType.MULTIPART_FORM_DATA)
 public Response uploadFile(
  @FormDataParam("file") InputStream uploadedInputStream,
  @FormDataParam("file") FormDataContentDisposition fileDetail) {
 
  String uploadedFileLocation = "D://" + fileDetail.getFileName();
  writeToFile(uploadedInputStream, uploadedFileLocation);
  String output = "File uploaded to : " + uploadedFileLocation;
  return Response.status(200).entity(output).build();
 }
 
 private void writeToFile(InputStream uploadedInputStream,
  String uploadedFileLocation) {
 
  try {
	OutputStream out = new FileOutputStream(new File(
			uploadedFileLocation));
	int read = 0;
	byte[] bytes = new byte[1024];
 
	out = new FileOutputStream(new File(uploadedFileLocation));
	while ((read = uploadedInputStream.read(bytes)) != -1) {
		out.write(bytes, 0, read);
	}
	out.flush();
	out.close();
  } catch (IOException e) {
	e.printStackTrace();
  }
 }
}

No comments:

Post a Comment