springMVC+jersey实现跨服务器文件上传

网友投稿 234 2022-12-29


springMVC+jersey实现跨服务器文件上传

本文实例为大家分享了springMVC+jersey实现跨服务器文件上传的具体代码,供大家参考,具体内容如下

1.首先添加所需要的jar包

2.在springMVC的配置文件中添加文件上传解析器

5. controller

/*

* 文件上传

*/

@RequestMapping("fileUpload")

public @ResponseBody Map yZzrdRdvfileUpload(HttpServletRequest request,String fileName){

System.out.println(111);

//1.将普通请求转换为多部件请求

MultipartHttpServletRequest mr = (MultipartHttpServletRequest)request;

//2.根据文件名获取文件对象

CommonsMultipartFile mf = (CommonsMultipartFile)mr.getFile(fileName);

//3.获取文件全名称

String originalFilename = mf.getOriginalFilename();

System.out.println("文件全名称"+originalFilename);

//4.获取后缀

String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));

System.out.println("后缀"+suffix);

//5.将文件对象转换为字节

byte[] fileBytes = mf.getBytes();

//6.获取新的随机文件名

String newFileName="";

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");

int num = (int)(Math.random()*899)+100;

newFileName = sdf.format(new Date())+num;

System.out.println("新的随机文件名"+newFileName);

//开始上传

//1.创建jesy服务器

Client client = Client.create();

String fullPath = "http://localhost:8088/fileServiceProject/upload/"+newFileName+suffix;

//把文件关联到远程服务器

WebResource wr = client.resource(fullPath);

//2.相对路径

String reletivePath = "/upload/"+newFileName+suffix;

//3.上传

wr.put(String.class, fileBytes);

Map map = new HashMap();

map.put("fullPath", fullPath);

map.put("reletivePath", reletivePath);

return map;

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:软件接口测试工具的比较(接口测试工具有哪些)
下一篇:微服务网关转发(微服务网关zuul)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~