spring 上传 文件 mysql
问题阐述: 利用spring CommonsMultipartResolver 进行文件的上传,出现文件上传大于1M
内存溢出等问题
(类似这个:http://topic.csdn.net/t/20060803/15/4924883.html )但是以上提出解决办法是对于上传到硬盘上。
以下是上传到数据库的代码。
public Set<MultipartFile> getFileSet(HttpServletRequest request) {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Set<MultipartFile> fileset = new LinkedHashSet<MultipartFile>();
for (Iterator it = multipartRequest.getFileNames(); it.hasNext();) {
String key = (String) it.next();
MultipartFile file = multipartRequest.getFile(key);
if (file.getOriginalFilename().length() > 0) {
fileset.add(file);
}
}
return fileset;
}
if (multipartFile != null) {
for (MultipartFile mf : multipartFile) {
Attachment at = new Attachment();
articleAttachment.setContent(mf .getBytes()); //对应的pojo的字段为byte[]
attachmentDao.save(articleAttachment);
}
怎么才能解决getBytes()内存消耗问题?(尽量变动小一点) 原本满足上传小图片,但需求有更改,代码基本完成,改动越小越好。 思路完整、代码清晰 咱就上分。
------解决方案--------------------
帮顶,让更多人看到帖子,增加解决问题的概率。嘿嘿
------解决方案--------------------
一般这么大的文件都是用断点续传吧