step1、jsp前端
<form action="<%=request.getContextPath()%>/index/uploadvideo" method="post" enctype="multipart/form-data">
<input type="file" name="file" />
<input class="btn btn-success fileinput-button" type="submit" value="上傳" />
</form>
step2、controller
@RequestMapping("/uploadvideo")
public ModelAndView uploadVideo(HttpServletRequest request,@RequestParam(value="file",required=false) MultipartFile file){
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("/backstage/handleresult");
ResultVo<String> resultVo = new ResultVo<>();
JceLog.info("上傳視頻--->");
try {
String fileName = file.getOriginalFilename();
String extension = fileName.substring(fileName.lastIndexOf("."));
// String savedFileName = java.util.UUID.randomUUID().toString() + extension;
// String savedFileName = "index_video"+extension;
String savedFileName = "index_video.mp4";
// String folderPath = "D:\\tomcatStore\\gszw\\"+savedFileName;
String folderPath = "/home/projectDeploy/inacg/store/gsyx/"+savedFileName;
boolean uploadResult = FileUpload.doUploadFile(file, folderPath);
if (uploadResult) {
resultVo.setIsSuccess(PARAM_SUCCESS);
resultVo.setMessage("視頻上傳成功,請到<a href='http://101.132.155.221:9090/Gsyx/'>首頁</a>查看");
}else {
resultVo.setIsSuccess(PARAM_ERROR);
resultVo.setMessage("視頻上傳失敗,請重試!");
}
} catch (Exception e) {
// TODO: handle exception
resultVo.setIsSuccess(PARAM_ERROR);
resultVo.setMessage("封面上傳異常,請確認選擇好要上傳的文件");
}
modelAndView.addObject("result", resultVo);
return modelAndView;
}
step3、配置文件
<!-- 配置文件上傳,如果沒有使用文件上傳可以不用配置,當然如果不配,那麼配置文件中也不必引入上傳組件包 -->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 默認編碼 -->
<property name="defaultEncoding" value="utf-8" />
<!-- 文件大小最大值 -->
<property name="maxUploadSize" value="10485760000" />
<!-- 內存中的最大值 -->
<property name="maxInMemorySize" value="409600000" />
</bean>