public static String UploadFileByHttpClient(String fileName,String path, String url) {
String result = "";
CloseableHttpClient httpClient = HttpClients.createDefault();
try {
HttpPost httpPost = new HttpPost(url);
MultipartEntityBuilder builder = MultipartEntityBuilder.create().setMode(HttpMultipartMode.RFC6532);
httpPost.addHeader("header1", "111");
File file = new File(path+fileName);
builder.addBinaryBody("file", file, ContentType.MULTIPART_FORM_DATA, fileName);
builder.addTextBody("params1", "1");
builder.addTextBody("params2", "2");
HttpEntity entity = builder.build();
httpPost.setEntity(entity);
HttpResponse response = httpClient.execute(httpPost);
HttpEntity responseEntity = response.getEntity();
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
InputStream content = responseEntity.getContent();
BufferedReader in = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
System.out.println(result);
}
}catch(Exception e) {
}finally {
try {
httpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}
@RequestMapping("getFileByIo.do")
public void getFileByIo(
@RequestParam(value = "file", required = false) MultipartFile file,
HttpServletResponse response, HttpServletRequest request)
throws Exception {
String fileName = file.getOriginalFilename();
System.out.println("文件名------>"+fileName+"文件大小"+file.getSize());
String path="D:/xtyx3/"+new Date().getTime()+file.getOriginalFilename();
file.transferTo(new File(path));
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.write(fileName);
out.flush();
out.close();
}