<script src="${base}/thirdparty/swfupload/swfupload.js" type="text/javascript"></script>
<script src="${base}/thirdparty/swfupload/swfupload.queue.js" type="text/javascript"></script>
<script src="${base}/thirdparty/swfupload/fileprogress.js" type="text/javascript"></script>
<script src="${base}/thirdparty/swfupload/handlers.js" type="text/javascript"></script>
<link href="${base}/thirdparty/swfupload/process.css" rel="stylesheet" type="text/css"/>
<#include "/common/image_upload.html"/>
       <@e.text label="认证通过图标"  id="uploadImgPath1" class="dfinput"    name="icon" readonly="readonly"/>
<@e.text label="图片路径" id="uploadFileText1" size="14" class="dfinput" />
<input type="file" id="uploadFile1" size="14" onchange="$('#uploadFileText1').val(this.value)"/>
<br/>
<@e.hidden id="mark1" value="false"/>
<@e.button class="upload-button" onclick="upload(1);" value="上传"/>
<br/>
<a title="标题图1" id="preBigImg1" class="cmcss" href="${base}/${(mmiGroupBanner1)!}" style="margin-left:87px;margin-top:10px;" >
<img id="preImg1" style="width:100px;height:70px;background-color:#CCCCCC;" maxWidth2="200" />
</a>
<@e.text label="认证不通过图标" id="uploadImgPath2" class="dfinput" name="xicon" readonly="readonly"/>
<@e.text label="图片路径" id="uploadFileText2" size="14" class="dfinput" />
<input type="file" id="uploadFile2" size="14" onchange="$('#uploadFileText2').val(this.value)"/>
<br/>
<@e.hidden id="mark1" value="false"/>
<@e.button class="upload-button" onclick="upload(2);" value="上传"/>
<br/>
<a title="标题图2" id="preBigImg2" class="cmcss" href="${base}/${(mmiGroupBanner2)!}" style="margin-left:87px;margin-top:10px;" >
<img id="preImg2" style="width:100px;height:70px;background-color:#CCCCCC;" maxWidth2="200" />
</a>
package cn.com.yhxl.jhahi.action.admin;

import java.util.Locale;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.apache.commons.io.FilenameUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
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 cn.com.yhxl.basic.entity.ms.MsSystemConfig;
import cn.com.yhxl.basic.service.ms.IMsSystemConfigService;
import cn.com.yhxl.common.upload.FileRepository; @Controller
public class FileUploadAct { private static final Logger log = LoggerFactory.getLogger(FileUploadAct.class);
private static final String RESULT_PAGE = "/common/iframe_upload"; @RequiresPermissions("file:swfupload")
@RequestMapping(value = "/file/o_swfupload.do", method = RequestMethod.POST)
public String swfAttachsUpload(String root,Integer uploadNum, @RequestParam(value = "uploadFile", required = false) MultipartFile file,HttpServletRequest request, HttpServletResponse response,ModelMap model) throws Exception { MsSystemConfig sc = scService.get();
String origName = file.getOriginalFilename();
String ext = FilenameUtils.getExtension(origName).toLowerCase(Locale.ENGLISH);
String fileUrl = "";
try {
if(ext.equalsIgnoreCase("flv") || ext.equalsIgnoreCase("mp4") || ext.equalsIgnoreCase("f4v")){
fileUrl = fileRepository.storeByExtVideo(sc.getScVideoUploadPath(), ext, file);
fileUrl = fileUrl.replace(sc.getScVideoUploadPath(), sc.getScVideoPrefixUrl());
}else if(ext.equalsIgnoreCase("bmp") || ext.equalsIgnoreCase("png") || ext.equalsIgnoreCase("jpg") || ext.equalsIgnoreCase("jpeg")){
fileUrl = fileRepository.storeByExt(sc.getScPhotoUploadPath(), ext, file);
}else{
fileUrl = fileRepository.storeByExt(sc.getScFileUploadPath(), ext, file);
}
// 加上部署路径
//System.out.println("fileUrl="+fileUrl); //fileMng.saveFileByPath(fileUrl, origName, false);
model.addAttribute("attachmentPath", fileUrl);
model.addAttribute("uploadPath", fileUrl);
model.addAttribute("uploadNum", uploadNum);
return RESULT_PAGE;
} catch (Exception e) {
log.error("文件上传发生错误", e);
model.addAttribute("error", e.getMessage());
}
return RESULT_PAGE; } @Autowired
protected FileRepository fileRepository;
@Autowired
private IMsSystemConfigService scService;
}

前台上传

修改<#include "/common/image_upload.html"/>文件
<script type="text/javascript">
//上传图片
function upload(n) {
var of = $("#uploadFile"+n);
//检查是否选择了图片
if(of.val()=="") {
alert("<@s.m "imageupload.error.noFileToUpload"/>");
return;
}
//将file移动至上传表单
$("#fileContent").empty();
$("#fileContent").append(of);
//复制一个file放至原处
$("#ufc"+n).append(of.clone().attr("value",""));
//修改属性
$("#uploadFileText"+n).attr("value","");
of.attr("id","");
of.attr("name","uploadFile");
//其他表单
$("#ufFileName").val($("#fileName"+n).val());
$("#ufWidth").val($("#zoomWidth"+n).val());
$("#ufHeight").val($("#zoomHeight"+n).val());
//先清除
$("#ufMark").val("");
$("#ufMark").val($("#mark"+n).val());
$("#uploadNum").val(n);
$("#uploadForm").submit();
}
//剪裁图片
function imgCut(n) {
if($("#uploadImgPath"+n).val()=="") {
alert("<@s.m "imageupload.error.noFileToCut"/>");
return;
}
var url = "../common/v_image_area_select.do?uploadNum="+n+"&imgSrcPath="
+$("#uploadImgPath"+n).val()+"&zoomWidth="+$("#zoomWidth"+n).val()+"&zoomHeight="+$("#zoomHeight"+n).val();
window.open(url,"imgcut","height=550, width=1000, top=0, left=0, toolbar=no, menubar=no, scrollbars=auto, resizable=yes,location=no, status=no");
}
//预览图片
function previewImg(n) {
var img = $("#uploadImgPath"+n).val();
if(img!="") {
if(img.indexOf("?")==-1) {
$("#preImg"+n).attr("src",img+"?d="+new Date()*1);
} else {
$("#preImg"+n).attr("src",img+"&d="+new Date()*1);
}
if(!$("#preImg"+n).attr("noResize")) {
$("#preImg"+n).css("width","auto");
$("#preImg"+n).css("height","auto");
}
} else {
$("#preImg"+n).removeAttr("src");
}
}
</script>
<form id="uploadForm" action="../doctor/o_swfupload.jhtml" method="post" enctype="multipart/form-data" target="hiddenIframe" style="display:none;width:0px;height:0px;">
<span id="fileContent"></span>
<input id="ufWidth" type="hidden" name="zoomWidth"/>
<input id="ufHeight" type="hidden" name="zoomHeight"/>
<input id="ufFileName" type="hidden" name="fileName"/>
<input id="ufMark" type="hidden" name="mark"/>
<input id="uploadNum" type="hidden" name="uploadNum"/>
</form>
<iframe name="hiddenIframe" frameborder="0" border="0" style="display:none;width:0px;height:0px;"></iframe>
@RequestMapping(value = "/o_swfupload.jhtml", method = RequestMethod.POST)
public String swfAttachsUpload(String root,Integer uploadNum, @RequestParam(value = "uploadFile", required = false) MultipartFile file,HttpServletRequest request, HttpServletResponse response,ModelMap model) throws Exception { MsSystemConfig sc = scService.get();
String origName = file.getOriginalFilename();
String ext = FilenameUtils.getExtension(origName).toLowerCase(Locale.ENGLISH);
String fileUrl = "";
try {
if(ext.equalsIgnoreCase("flv") || ext.equalsIgnoreCase("mp4") || ext.equalsIgnoreCase("f4v")){
fileUrl = fileRepository.storeByExtVideo(sc.getScVideoUploadPath(), ext, file);
fileUrl = fileUrl.replace(sc.getScVideoUploadPath(), sc.getScVideoPrefixUrl());
}else if(ext.equalsIgnoreCase("bmp") || ext.equalsIgnoreCase("png") || ext.equalsIgnoreCase("jpg") || ext.equalsIgnoreCase("jpeg")){
fileUrl = fileRepository.storeByExt(sc.getScPhotoUploadPath(), ext, file);
}else{
fileUrl = fileRepository.storeByExt(sc.getScFileUploadPath(), ext, file);
}
// 加上部署路径
//System.out.println("fileUrl="+fileUrl); //fileMng.saveFileByPath(fileUrl, origName, false);
model.addAttribute("attachmentPath", fileUrl);
model.addAttribute("uploadPath", fileUrl);
model.addAttribute("uploadNum", uploadNum);
// return RESULT_PAGE;
return FrontUtils.getTplPathUrl("/WEB-INF", "common", "iframe_upload");
} catch (Exception e) {
log.error("文件上传发生错误", e);
model.addAttribute("error", e.getMessage());
}
return FrontUtils.getTplPathUrl("/WEB-INF", "common", "iframe_upload");
} private static final Logger log = LoggerFactory.getLogger(DoctorAct.class);
private static final String RESULT_PAGE = "/WEB-INF/common/iframe_upload";
@Autowired
protected FileRepository fileRepository;
@Autowired
private IMsSystemConfigService scService;

swfupload用法总结的更多相关文章

  1. SWFUpload

    引用:http://www.cnblogs.com/2050/archive/2012/08/29/2662932.html SWFUpload是一个flash和js相结合而成的文件上传插件,其功能非 ...

  2. swfupload浅谈

    首先,先介绍一个swfUplod吧. SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合flash与javascript技术为web开发者提供了一个具有丰富功 ...

  3. 文件上传利器SWFUpload入门简易教程

    凡做过网站开发的都应该知道表单file的确鸡肋. Ajax解决了不刷新页面提交表单,但是却没有解决文件上传不刷新页面,当然也有其它技术让不刷新页面而提交文件,该技术主要是利用隐藏的iFrame, 较A ...

  4. Flash上传组件之SWFUpload文件上传

    一.什么是SWFUpload? SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而 ...

  5. 文件上传利器SWFUpload使用指南(转)

    http://www.cnblogs.com/2050/archive/2012/08/29/2662932.html 文件上传利器SWFUpload使用指南 SWFUpload是一个flash和js ...

  6. SWFUpload多文件上传使用指南

    SWFUpload是一个flash和js相结合而成的文件上传插件,其功能非常强大.以前在项目中用过几次,但它的配置参数太多了,用过后就忘记怎么用了,到以后要用时又得到官网上看它的文档,真是太烦了.所以 ...

  7. 【转】SWFUpload使用指南

    原文出自:http://www.runoob.com/w3cnote/swfupload-guide.html SWFUpload是一个flash和js相结合而成的文件上传插件,其功能非常强大.以前在 ...

  8. jquery uploadify文件上传插件用法精析

      jquery uploadify文件上传插件用法精析 CreationTime--2018年8月2日11点12分 Author:Marydon 一.参数说明 1.参数设置 $("#fil ...

  9. SwfUpload文件上传

    SWFUpload是一个flash和js相结合而成的文件上传插件,其功能非常强大.以前在项目中用过几次,但它的配置参数太多了,用过后就忘记怎么用了,到以后要用时又得到官网上看它的文档,真是太烦了.所以 ...

随机推荐

  1. textview设置字体的行距和字间距

    字间距 textView有一个属性android:textScaleX是调节字间距的,它的值是一个float型.查看源代码,默认textView 此属性是使用的是: android.internal. ...

  2. NSIS 2.0界面快速入门

    NSIS 2.0 版本支持定制的用户界面.所谓的 Modern UI(下称 MUI) 就是一种模仿最新的 Windows 界面风格的界面系统.MUI 改变了 NSIS 脚本的编写习惯,它使用 NSIS ...

  3. LeetCode Binary Tree Preorder Traversal 先根遍历

    题意:给一棵树,求其先根遍历的结果. 思路: (1)深搜法: /** * Definition for a binary tree node. * struct TreeNode { * int va ...

  4. 使php支持mbstring库

    多国语言并存就意味着多字节,PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得到的只是字符串所占的字节数.对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF ...

  5. 2013.11.15 初学ant构建

    该做的事情都差不多做完了,今天开始用ant构建,所以学了下ant,其实要不是因为ubuntu时不时的抽风我应该早就可以开始构建了,但重写的时候也想清楚了一些逻辑,优化了一些地方.下面是我这辈子写的第一 ...

  6. 【转】declare-styleable的使用(自定义控件) 以及declare-styleable中format详解

    原文网址:http://www.cnblogs.com/622698abc/p/3348692.html declare-styleable是给自定义控件添加自定义属性用的 1.首先,先写attrs. ...

  7. MySQL基础之第1章 数据库概述

    1.1.数据存储方式 1.人工管理阶段2.文件系统阶段3.数据库系统阶段 1.2.数据库泛型 数据库泛型就是数据库应该遵循的规则.数据库泛型也称为范式.目前关系数据库最常用的四种范式分别是:第一范式( ...

  8. Top Android App使用的组件 3

    8684公交 AdChina:com.adchina:易传媒广告平台 AdsMogo:com.adsmogo:芒果移动广告平台 大姨吗 AChartEngine:org.achartengine:An ...

  9. MySQL索引与优化策略

    1. MySQL索引实现 在MySQL中,索引属于存储引擎级别的概念,不同存储引擎对索引的实现方式是不同的,下面主要讨论MyISAM和InnoDB两个存储引擎的索引实现方式. MyISAM索引实现 M ...

  10. hdu 3172 Virtual Friends(并查集)University of Waterloo Local Contest 2008.09

    题目比较简单,但作为长久不写题之后的热身题还是不错的. 统计每组朋友的朋友圈的大小. 如果a和b是朋友,这个朋友圈的大小为2,如果b和c也是朋友,那么a和c也是朋友,此时这个朋友圈的大小为3. 输入t ...