资源简介

本项目是基于maven构建的ssm框架的项目,是一个demo,实现了视频的上传和网页的在线预览。里面有关配置请自行调整。

资源截图

代码片段和文件信息

package com.javaweb.controller;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.annotation.Resource;
import javax.servlet.ServletContext;
 
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.util.Streams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

import com.javaweb.entity.Media;
import com.javaweb.service.impl.ServiceFactory;
import com.javaweb.utils.MyWebPrinter;

/**
 * 测试controller
 * @author cp
 *
 */
@Controller
@Scope(“prototype“)
@RequestMapping(“/media“)
public class MediaController {

private static final Logger logger = LoggerFactory.getLogger(MediaController.class);

@Resource
private ServiceFactory serviceFactory;

/**
 * 视频上传解码并保存
 * 
 * @param request
 * @param response
 * @throws IOException
 */
@RequestMapping(value = “/dofunction“ method = RequestMethod.POST)
public void handler(HttpServletRequest request HttpServletResponse response
@RequestParam(“myvideo“) MultipartFile file) throws IOException {
String message = ““;
try {
Media media = new Media();
// 解析数据
media.settitle(request.getParameter(“title“));
media.setDescript(request.getParameter(“descript“));
boolean flag = false; // 转码成功与否的标记
// 上传文件
ServletContext sctx = request.getServletContext();
// 获得保存文件的路径
String basePath = sctx.getRealPath(“videos“); 
// 获得文件名
String fileUrl = file.getOriginalFilename();
// 在某些操作系统上item.getName()方法会返回文件的完整名称即包括路径
String fileType = fileUrl.substring(fileUrl.lastIndexOf(“.“)); // 截取文件格式
// 自定义方式产生文件名
String serialName = String.valueOf(System.currentTimeMillis());
// 待转码的文件
File uploadFile = new File(basePath + “/temp/“ + serialName + fileType);
 
// 保存文件
Streams.copy(file.getInputStream()new FileOutputStream(uploadFile.getAbsolutePath())true);
// 判断文件的大小
if (file.getSize() > 500 * 1024 * 1024) {
message = “上传失败!您上传的文件太大系统允许最大文件500M“;
}
String codcFilePath = basePath + “/“ + serialName + “.flv“; // 设置转换为flv格式后文件的保存路径
String mediaPicPath = basePath + “/images“ + File.separator + serialName + “.jpg“; // 设置上传视频截图的保存路径

// 获取配置的转换工具(ffmpeg.exe)的存放路径
String ffmpegPath = request.getServletContext().getRealPath(“/tools/ffmpeg.exe“);

media.setSrc(“videos/“ + serialName + “.flv“);
media.setPicture(“videos/images/“ + serialName + “.jpg“);
media.set

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    2063872  2011-08-25 15:53  maven+ssm框架视频上传预览\sample.flv

     文件       1239  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.classpath

     文件       1214  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.project

     文件        639  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\.jsdtscope

     文件         57  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.core.resources.prefs

     文件        430  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.jdt.core.prefs

     文件         90  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.m2e.core.prefs

     文件        740  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.wst.common.component

     文件        252  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.wst.common.project.facet.core.xml

     文件         49  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件         50  2016-09-22 12:05  maven+ssm框架视频上传预览\video\.settings\org.eclipse.wst.validation.prefs

     文件       6241  2016-09-21 15:06  maven+ssm框架视频上传预览\video\pom.xml

     文件       4937  2016-09-22 12:23  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\controller\MediaController.java

     文件        373  2016-09-22 12:08  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\dao\DaoFactory.java

     文件        427  2016-09-22 09:55  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\dao\MediaMapper.java

     文件       1254  2016-09-19 11:11  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\entity\Media.java

     文件       1102  2016-09-22 09:48  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\service\IMediaService.java

     文件       3794  2016-09-22 10:03  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\service\impl\MediaService.java

     文件        402  2016-09-22 12:09  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\service\impl\ServiceFactory.java

     文件        905  2016-09-17 17:02  maven+ssm框架视频上传预览\video\src\main\java\com\javaweb\utils\MyWebPrinter.java

     文件       2351  2016-09-19 11:11  maven+ssm框架视频上传预览\video\src\main\resources\generatorConfig.xml

     文件        283  2016-08-23 08:21  maven+ssm框架视频上传预览\video\src\main\resources\jdbc.properties

     文件       1300  2016-09-22 10:52  maven+ssm框架视频上传预览\video\src\main\resources\log4j.properties

     文件       3768  2016-09-22 09:58  maven+ssm框架视频上传预览\video\src\main\resources\mapping\MediaMapper.xml

     文件       2175  2016-09-18 13:47  maven+ssm框架视频上传预览\video\src\main\resources\mybatis-config.xml

     文件       2802  2016-09-22 10:58  maven+ssm框架视频上传预览\video\src\main\resources\spring-mvc.xml

     文件       2829  2016-09-18 13:49  maven+ssm框架视频上传预览\video\src\main\resources\spring-mybatis.xml

     文件         57  2016-09-22 12:05  maven+ssm框架视频上传预览\video\src\main\webapp\index.jsp

     文件   28761088  2016-09-22 09:00  maven+ssm框架视频上传预览\video\src\main\webapp\tools\ffmpeg.exe

............此处省略76个文件信息

评论

共有 条评论