java如何实现本地视频上传功能?需要建立哪些数据包呢?急,因为刚刚学,所以不很懂。如果要加代码应该在哪里添加?
2条回答
- 夜半无声 2017-03-27 03:13关注
后端代码
/* * * 本地视频上传 * */ @RequestMapping(value = "/upVideo") public void videosUp(@RequestParam("file") MultipartFile files, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { String fileName = files.getOriginalFilename(); String videoSource = request.getParameter("videoSource"); String videoType = request.getParameter("videoType"); String imageName = request.getParameter("imageName"); // 路径 String filePath = request.getSession().getServletContext().getRealPath("/") + DicConfigUtils.getConfigValue("videoPath", BsConstants.SOFTTYPE_VIP, "0"); File f = new File(filePath); if (!f.exists()) { f.mkdirs(); } files.transferTo(new File(filePath + "/" + fileName)); // 转存文件 Video video = new Video(); video.setvId(IdGenerator.getAccessid("")); video.setCreateDate(CommonUtils.getCurrentTime()); video.setvSource(videoSource); video.setvType(videoType); video.setVideoPath(fileName); video.setImageName(imageName); videoService.create(video); } catch (Exception e) { logger.error("上传视频异常:", e); } }
前端提交:
$("#submit").click(function() { var webcamSources = $("#webcamSources").val(); var webcamTypes = $("#webcamTypes").val(); var imageName = $("#imageName").val(); var file = $("#file").val(); var maxsize = 20*1024*1024;//20M if(webcamSources==""){ layer.msg("请选择视频来源!",{icon: 6,time:1000}); return false; }else if(webcamTypes==""){ layer.msg("请选择视频类型!",{icon: 6,time:1000}); return false; }else if(imageName==""){ layer.msg("请输入视频名称!",{icon: 6,time:1000}); return false; }else if(file==""){ layer.msg("请选择要上传的视频文件!",{icon: 6,time:1000}); return false; }else{ var obj_file = document.getElementById("file"); var filesize = obj_file.files[0].size; if(filesize>maxsize){ layer.msg("导入视频太大,请导入小于20M的视频!",{icon: 6,time:1000}); return false; }else{ $.ajaxFileUpload({ url : '${contextpath}/manage/video/upVideo.html', secureuri : false, fileElementId : 'file', type: 'POST', data:{'imageName':imageName,'videoType':webcamTypes,'videoSource':webcamSources}, contentType : "multipart/form-data; charset=UTF-8", success : function() { layer.msg("上传成功", { icon : 6, time : 1000 }, function() { parent.window.location.href = 'toVideoList.html'; }); }, error : function(e) { layer.msg("上传失败", {icon : 6,time : 1000}); } }) } } });
前端页面:
<span class="btn-upload form-group"> <input class="input-text upload-url" type="text" name="uploadfile-2" id="submit" readonly datatype="*" nullmsg="请添加附件!" style="width:200px"> <a href="javascript:void();" class="btn btn-primary upload-btn"><i class="Hui-iconfont"></i> 浏览文件</a> <input type="file" multiple id="file" name="file" class="input-file"> </span>
我是直接传到服务器目录上的;可以参考下;
解决 2无用 1
悬赏问题
- ¥30 这是哪个作者做的宝宝起名网站
- ¥60 版本过低apk如何修改可以兼容新的安卓系统
- ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
- ¥50 有数据,怎么建立模型求影响全要素生产率的因素
- ¥50 有数据,怎么用matlab求全要素生产率
- ¥15 TI的insta-spin例程
- ¥15 完成下列问题完成下列问题
- ¥15 C#算法问题, 不知道怎么处理这个数据的转换
- ¥15 YoloV5 第三方库的版本对照问题
- ¥15 请完成下列相关问题!