使用Java轻松上传文件
我有以下问题:我想用Web服务(RESTful/Wildfly)上传文件(.csv、.jpg、.xls)。它正在使用HTML,但我希望它使用cURL命令 以下是我当时用于CSV文件的代码:使用Java轻松上传文件,java,web-services,curl,upload,Java,Web Services,Curl,Upload,我有以下问题:我想用Web服务(RESTful/Wildfly)上传文件(.csv、.jpg、.xls)。它正在使用HTML,但我希望它使用cURL命令 以下是我当时用于CSV文件的代码: package com.javacodegeeks.enterprise.rest.resteasy; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.Outpu
package com.javacodegeeks.enterprise.rest.resteasy;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
import org.jboss.resteasy.annotations.providers.multipart.MultipartForm;
@Path("/files")
public class RESTEasyFileUploadService {
Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
private static final String SERVER_UPLOAD_LOCATION_FOLDER = "C://Users /ditzel/Downloads/";
// CSV file
@POST
@Path("/upload/csv")
@Consumes("multipart/form-data")
public Response uploadFile(@MultipartForm MyMultipartForm form)
throws Exception {
String fileName = SERVER_UPLOAD_LOCATION_FOLDER
+ dateFormat.format(date) + ".csv";
saveFile(form.getFile_input(), fileName);
String output = "File saved to server location : " + fileName;
return Response.status(200).entity(output).build();
}
// save uploaded file to a defined location on the server
private void saveFile(InputStream uploadedInputStream, String serverLocation)
throws Exception {
OutputStream outputStream = new FileOutputStream(new File(
serverLocation));
try {
int read = 0;
byte[] bytes = new byte[1024];
while ((read = uploadedInputStream.read(bytes)) != -1) {
outputStream.write(bytes, 0, read);
}
outputStream.flush();
outputStream.close();
} finally {
outputStream.flush();
outputStream.close();
uploadedInputStream.close();
}
}
使用此命令:
curl -v -F key1=value1 -F upload=@C:/Users/ditzel/Downloads/5.csv http://127.0.0.1:28080/JAXRS-RESTEasy/rest/files/upload/csv