博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
上传图片
阅读量:5010 次
发布时间:2019-06-12

本文共 4650 字,大约阅读时间需要 15 分钟。

********

1,jsp页面

 

2,后台struts的action中

public boolean saveAttach(TBasePhotoAttach photo) throws Exception{        /*System.out.println(upload1FileName); //flower.jpg        System.out.println(upload1);         System.out.println(upload1ContentType); //image/pjpeg   */     //只能上传这些格式的图片         if(!"image/jpeg".equals(upload1ContentType)                &&!"image/gif".equals(upload1ContentType)                &&!"image/pjpeg".equals(upload1ContentType)){            return false;        }     //图片名        String photoName = upload1FileName.substring(0,upload1FileName.lastIndexOf("."));     //图片后缀        String suffix=upload1FileName.substring(upload1FileName.lastIndexOf(".")+1);     //加上毫秒,有时因为批量上传图片,导致名字相同而被覆盖,所以加上毫秒较好        SimpleDateFormat format=new SimpleDateFormat("yyyyMMddhhmmssSSS");        //使用当前时间为图片命名        String newName=format.format(new Date())+"."+suffix;        //用于保存上传照片的文件夹        String uploadPath=this.getRequest().getRealPath("/")+"uploadImages"; //  E:JavaWorkspace dp WebRoot uploadImages        File file=new File(uploadPath);        if(!file.exists()){            file.mkdirs();        }                        String saveUrl=uploadPath +"\\"+ newName; //完整保存路径                //文件输入流        FileInputStream fis = new FileInputStream(upload1);        //文件输出流        FileOutputStream fos = new FileOutputStream(saveUrl, false);                byte buffer[] = new byte[4096];        int readSize = 0;        //存储文件        while ((readSize = fis.read(buffer)) > 0) {            fos.write(buffer, 0, readSize);        }                //photo.setPhotoUrl(saveUrl);        //URLEncoder.encode(upload1FileName, "UTF-8");        //DATE.getCurrentDate().toString()                String photoUrl=this.getRequest().getContextPath()+"/uploadImages/"+newName;        photo.setPhotoUrl(photoUrl);        photo.setOldname(upload1FileName);        photo.setNewname(newName);        stuService.savePhoto(photo);                return true;            }

 二,批量上传

1,后台

public void saveGroupPhotos() throws Exception{        //构建保存路径        String uploadPath=this.getRequest().getRealPath("/")+"uploadImages";        File file=new File(uploadPath);        if(!file.exists()){            file.mkdirs();        }        SimpleDateFormat format=new SimpleDateFormat("yyyyMMddhhmmssSSS");                FileInputStream fis=null;        FileOutputStream fos=null;        String suffix=null;        String saveUrl=null;                for(int i=0;i
0){ fos.write(bytes,0,len); } } }

2,前台

function addMore(){               $("#upload").append("");                      }

<form action="<%=path%>/test/test!saveGroupPhotos.action" method="post" enctype="multipart/form-data">

<div id="upload">
<input type="file" name="group" label="文件1">
</div>
<input type="button" value="add more.." οnclick="addMore();">
<input type="submit" value="提交">
</form>

 

 三,使用jquery插件批量上传图片

//即刻显示上传的图片

function view(){
var filepath=$("#upload1").val();
var suffix=filepath.substr(filepath.indexOf(".")+1);
if("jpg"==suffix||"png"==suffix||"bmp"==suffix||"jpeg"==suffix){
$("#preview img").attr("src",filepath);
$("#preview").show();
}else{
alert("图片格式不正确");
return;
}
}
//页面加载完成后,
$(function(){
//alert($("#show img").attr("src"));
var photourl=$("#photourl").val();
if(photourl==""||photourl==null){
$("#preview").hide();
}
});
/******/
function del(id){
$("#"+id).remove();
var input="<input name='deletePhotoIds' type='hidden' value='"+id+"'/>"
$("#deleteAttachDiv").append(input);
}

 

<fieldset>

<legend>民主评议照片上传</legend>
<%-- <input type="file" class="input_text" name="upload1" id="upload1" style="width: 60%" οnchange="view();"/>
<br><br>
<div id="preview">
<img width="100px" height="100px" alt="" src="${photoModel.photoUrl }"/>
</div>
--%>

 

<form action="<%=path%>/student/student!savePreparePhoto.action"

method="post" οnsubmit="return checkform();" enctype="multipart/form-data" target="actionframe2">
<input type="hidden" name="photoModel.photoUrl" id="photourl" value="${photoModel.photoUrl}">
<div id="deleteAttachDiv" style="display: none;">
</div>

<input type="file" class="multi" name="upload" id="upload" style="width: 100%;">
<s:if test="photosModel != null">
<s:iterator value="photosModel" var="attch">
<div class="MultiFile-label" id="${id }" flag="1">
<li>
<a class="MultiFile-remove" href="#" οnclick="del('${id }')">删除</a>
<%-- <img width="100px" height="100px" alt="" src="${photoUrl }"/> --%>
<span class="MultiFile-title">${oldname }</span>
</li>
</div>
</s:iterator>
</s:if>
</fieldset>

 

*************

转载于:https://www.cnblogs.com/qingmaple/p/4090324.html

你可能感兴趣的文章
14款下载有用脚本的超酷网站
查看>>
LXC-Linux Containers介绍
查看>>
7.31实习培训日志-docker sql
查看>>
c#中使用servicestackredis操作redis
查看>>
ios app 真机crash报告分析
查看>>
CRC标准以及简记式
查看>>
SEO搜索引擎
查看>>
关于本地使用tomcat部署web应用,浏览器自动跳转为https的问题
查看>>
一、Text To Speech
查看>>
Java读取并下载网络文件
查看>>
github上构建自己的个人网站
查看>>
在word中粘贴的图片为什么显示不完整
查看>>
SQL Server 数据库的鼠标操作
查看>>
net软件工程师求职简历
查看>>
总线置顶[置顶] Linux bus总线
查看>>
nullnullHandling the Results 处理结果
查看>>
SQL SERVER BOOK
查看>>
JS基础回顾,小练习(判断数组,以及函数)
查看>>
多任务——进程
查看>>
WCF:如何将net.tcp协议寄宿到IIS
查看>>