NutzCN Logo
问答 大文件上传有什么好的办法?
发布于 2170天前 作者 zp8821138 1297 次浏览 复制 上一个帖子 下一个帖子
标签:

不能引入云存储方案。因为内网部署。,要传2g的视频上去,代码如下

7 回复
@AdaptBy(type = UploadAdaptor.class, args = { "${app.root}/WEB-INF/tmp", "8192", "utf-8" })
	@At("/file")
	@Ok("json")
	public Object uploadFile(@Param("file") TempFile tmpFile, HttpServletRequest req) {
		Map<String, Object> data = new HashMap<String, Object>();
		try {
			File fromFile = tmpFile.getFile();
			String tmpName = tmpFile.getSubmittedFileName();
			String fileName = generateFileName(tmpName);
			File toFile = new File(uploadPath+fileName);
			if(!toFile.exists()){
				toFile.getParentFile().mkdirs();
				toFile.createNewFile();
			}
			copyFile(fromFile, toFile);
			data.put("fileName", fileName.replaceAll("\\\\", "/"));
			data.put("orginName", tmpName);
			Attachment attachment = new Attachment();
			attachment.setFileName(fileName);
			attachment.setFileOriginalName(tmpName);
			attachment.setUserName(getUser().getLoginname());
			attachment.setUploadIp(getUser().getLoginIp());
			attachment.setFileExtName(getFileType(fileName));
			attachment.setFilePath(uploadPath+fileName);
			attachment.setFileSize(getFileSize(tmpFile));
			attachment.setUrl(downloadUrl+"?name="+fileName.replaceAll("\\\\", "/"));
			attachmentService.insert(attachment);
			return Result.success("system.upload.success", data);
		} catch (IOException e) {
			e.printStackTrace();
			return Result.error("system.upload.error");
		}
	}

有什么好的解决方案吗。。这个是用formdata上传的 为啥会导致页面有点卡啊??是因为上传的时候导致占用了大量浏览器内存的原因吗?

用百度的webupload吧,前端js插件,后台上传,应该就不卡了

。。不能用啊,这个别个要子编辑器中直接上传,所以改的是编辑器代码 在家webupload不好加。

里面的参数是什么意思 buffer大小会影响上传的速度吗?

只是影响内存分配,设大点也许会快点

断点续传有啥好的方案没有。。这还要考虑网络引起的问题。

html5的file api,可以直接读文件

添加回复
请先登陆
回到顶部