需求:没有ftp上传文件,只能写一个file的input标签上传了,不过是用ajaxupload.js异步上传的,暂时无法一个实现一个input上传多个文件。
代码:
前端:
<p>
<label class="large green button" for="uploadFile" style="cursor: pointer;">上传</label>
<input type="file" id="uploadFile" name="uploadFile" style="position:absolute;clip:rect(0 0 0 0);"
onchange="saveFile('uploadFile')">
</p>
<script src="${basePath}/resource/js/jquery-1.10.1.min.js"></script>
<script src="${basePath}/resource/js/layer/layer.js"></script>
<script src="${basePath}/resource/js/file/ajaxfileupload.js"></script>
<script src="${basePath}/resource/js/file/uploadFile.js"></script>
后端:
String originalFileName = null;
CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
if (multipartResolver.isMultipart(request)) {
MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
Iterator<String> iter = multiRequest.getFileNames();
while (iter.hasNext()) {
MultipartFile file = multiRequest.getFile(iter.next());
if (!file.isEmpty()) {
originalFileName = file.getOriginalFilename(); //原文件名
yhLog("开始上传"+originalFileName+"文件,时间为:" + _timeUtil.getNowDateStr());
String suffixString = originalFileName
.substring(originalFileName.lastIndexOf(".") + 1);
String suffixType = _fileUtil.getTypeBySuffixName(suffixString);
String fileName = originalFileName;
String uploadUrl = request.getSession().getServletContext().getRealPath("/") + "/" + suffixType;
File dir = new File(uploadUrl);
if (!dir.exists()) {
dir.mkdirs();
}
File targetFile = new File(uploadUrl + fileName);
if (!targetFile.exists()) {
try {
targetFile.createNewFile();
} catch (IOException e) {
yhErLog("创建"+originalFileName+"文件失败",e);
}
try {
file.transferTo(targetFile);
} catch (IllegalStateException e) {
yhErLog("客户端响应结束",e);
} catch (IOException e) {
yhErLog("读写数据异常",e);
}
}
}
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
}
}
yhLog("结束上传"+originalFileName+"文件,时间为:" + _timeUtil.getNowDateStr());
代码下载:
链接:http://pan.baidu.com/s/1pL4mjRt 密码:2bo4
全CSDN的丰(好)色(se)博客,这里有书本看不到的Java技术,电影院禁播的电影,欢迎关注QQ群494808400