方法/步骤
创新互联建站是一家从事企业网站建设、成都网站制作、做网站、行业门户网站建设、网页设计制作的专业网站建设公司,拥有经验丰富的网站建设工程师和网页设计人员,具备各种规模与类型网站建设的实力,在网站建设领域树立了自己独特的设计风格。自公司成立以来曾独立设计制作的站点上1000家。
1
首先这里jsp页面的代码 定义布局文件html的 如图所示
这是js文件 打开一个新子窗口和向页面中加载视频播放标签
上传文件java代码 获取时间转换成字符串作为上传之后的文件名以及设置保存路径和传值到jsp页面
这里copy代码 将一个源文件复制到新的目录路径下 如图所示
这里upload的jsp文件 用来选择视频文件并提交给后台
展示旧文件名新文件名和上传后的文件目录路径 并将其传给父页面即index.jsp
upload.jsp文件提交的代码经过java文件处理后通过控制转到upload_video.jsp
代码片段已经贴出来了,接下来我们开始演示界面 打开后如图所示 点击上传按钮
点击选择文件 找到要上传的视频文件 选中后选择打开 然后点击确定按钮
这里就是显示新旧文件名和文件目录路径的界面 点击确定将文件目录传给父文件界面
如图所示 目录路径已经出给input中了 点击播放按钮 就会出现播放界面并且自动播放了
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import org.apache.commons.fileupload.*;
import org.apache.commons.fileupload.servlet.*;
import org.apache.commons.fileupload.disk.*;public class UploadServlet extends HttpServlet {
private String filePath; //存放上传文件的目录
private String tempFilePath; //存放临时文件的目录 public void init(ServletConfig config)throws ServletException {
super.init(config);
filePath=config.getInitParameter("filePath");
tempFilePath=config.getInitParameter("tempFilePath");
filePath=getServletContext().getRealPath(filePath);
tempFilePath=getServletContext().getRealPath(tempFilePath);
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/plain");
//向客户端发送响应正文
PrintWriter outNet=response.getWriter();
try{
//创建一个基于硬盘的FileItem工厂
DiskFileItemFactory factory = new DiskFileItemFactory();
//设置向硬盘写数据时所用的缓冲区的大小,此处为4K
factory.setSizeThreshold(4*1024);
//设置临时目录
factory.setRepository(new File(tempFilePath)); //创建一个文件上传处理器
ServletFileUpload upload = new ServletFileUpload(factory);
//设置允许上传的文件的最大尺寸,此处为4M
upload.setSizeMax(4*1024*1024);
List /* FileItem */ items = upload.parseRequest(request); Iterator iter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if(item.isFormField()) {
processFormField(item,outNet); //处理普通的表单域
}else{
processUploadedFile(item,outNet); //处理上传文件
}
}
outNet.close();
}catch(Exception e){
throw new ServletException(e);
}
} private void processFormField(FileItem item,PrintWriter outNet){
String name = item.getFieldName();
String value = item.getString();
outNet.println(name+":"+value+"\r\n");
}
private void processUploadedFile(FileItem item,PrintWriter outNet)throws Exception{
String filename=item.getName();
int index=filename.lastIndexOf("\\");
filename=filename.substring(index+1,filename.length());
long fileSize=item.getSize();
if(filename.equals("") fileSize==0)return; File uploadedFile = new File(filePath+"/"+filename);
item.write(uploadedFile);
outNet.println(filename+" is saved.");
outNet.println("The size of " +filename+" is "+fileSize+"\r\n");
}
}
网上大把的代码,还有详细的注释,不过大部分再io流那里有点问题,先看一下io流的内容,网上的代码应该能修改的
先放好jspsmartupload包
%@ page contentType="text/html;charset=GB2312" %
%@ page language="java" import="com.jspsmart.upload.*"%
HTML
head
title文件上传处理页面/title
/head
BODY
p align="center"jspSmartUpload组件应用之员工档案/p
HR
%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定允许上传的文件(通过扩展名限制),仅允许jpg,bmp,gif文件。
su.setAllowedFilesList("jpg,bmp,gif");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
su.save("/upload");
%
p align="center"
table CELLSPACING="0" CELLPADDING="3" BORDER="1" WIDTH="474"
tr
td width="150"div align="left"psmallfont face="Verdana"姓名: /font/small/td
td width="324"smallfont face="Verdana"
%=su.getRequest().getParameter("username")%
br/font/small/td
/tr
tr
tdsmallfont face="Verdana"照片: /font/small/td
tdsmallimage src="%="upload/"+su.getFiLes().getFile(0).getFileName()%"/td
/tr
tr
tdsmallfont face="Verdana"年龄: /font/small/td
tdsmallfont face="Verdana"%=su.getRequest().getParameter("age")%/font/small/td
/tr
tr
tdsmallfont face="Verdana"工作单位: /font/small/td
tdsmallfont face="Verdana"%=su.getRequest().getParameter("department")%/font/small/td
/tr
tr
td colspan="2" width="474"div align="center"centerpsmallfont face="Verdana"
input TYPE="Submit" value="提交" /font/small/td
/tr
/table
/p
/BODY
/HTML