spring将映像上载到服务器(Java)
我想从客户端接收图像并将其保存到文件夹中。当我从POST-MAN
收到它时,它只生成字节:
ˇÿˇ‡ JFIF H H ˇ· XExif MM * ái & † † † ± ˇÌ 8Photoshop 3.0 8BIM 8BIM % ‘ åŸè ≤ ÈÄ òϯB~ˇ¿ ± " ˇƒ
没关系,我可以接收并保存它
但当我尝试从IOS接收信息时,它也会在体内向我发送一些信息:
--Boundary+71ADC8832D9A5F95
Content-Disposition: form-data; name="file"; filename="fileName.jpg"
Content-Type: image/jpeg
ˇÿˇ‡ JFIF H H ˇ· XExif MM * ái & † † † ± ˇÌ 8Photoshop 3.0 8BIM 8BIM % ‘ åŸè ≤ ÈÄ òϯB~ˇ¿ ± " ˇƒ
我怎样才能从中得到唯一的图像
我的Java代码是:
InputStream stream = request.getInputStream();
bytes = IOUtils.toByteArray(stream);
File file = new File("myfile/1.jpg");
BufferedImage img = ImageIO.read(new ByteArrayInputStream(bytes));
ImageIO.write(img, "JPEG", file);
更新:对于多部分上传图像,我添加了代码:
if(request instanceof MultipartHttpServletRequest){
/**
* multipart
*/
MultipartHttpServletRequest mrequest = (MultipartHttpServletRequest) request;
Iterator<String> itr = mrequest.getFileNames();
MultipartFile file = mrequest.getFile(itr.next());
bytes = file.getBytes();
}
但它不是MultipartHttpServletRequest
的一个例子。为什么
# 1 楼答案
我找到了解决方案:
spring和tomcat配置中存在问题。。。。我补充说
在服务器中。tomcat的xml
然后将bean添加到WebConfig:
# 2 楼答案
试试这个代码。这对我很管用。用<;%%将代码放入jsp页面本身>;标签