jsp上传图片(附件)

1.需要引入jquery.ajaxfileupload.js文件
2.jsp页面代码
<input type="hidden" name="fileName" id="fileName" value=""/>
<input type="hidden" name="imgurl" id="photoPath" value="默认图片地址"/>
<input type="file" name="photo" id="photo" οnchange="parseFileName();"/>
<input type="button" value="上传" id="uploadFile" οnclick="uploadPhoto();"/>
<img src="默认图片地址" id="photoImg" height="120" width="120"/>
3.jsp页面javascript
<script type="text/javascript">
/**
* 点击上传按钮,上传图片(附件操作一样)
*/
function uploadPhoto(){
var selectphoto = j("#photo").attr('value');
if(selectphoto==''){
alert('请选择照片!');
return false;
}
var fileName = j('#fileName').attr('value');
var fileType = fileName.substring(fileName.lastIndexOf('.'));
var exg = ".jpg.png.gif";
if(exg.indexOf(fileType.toLowerCase()) == -1){
alert('只允许上传.jpg.png.gif类型文件!');
return false;
}

j.ajaxFileUpload({
type : 'POST',
secureuri : false,
fileElementId : 'photo',
url : '图片上传action地址?fileName='+fileName,
dataType : 'String',
success : function(data){
loadPhoto(data);
alert('图片上传成功!');
},
error : function(data){
alert('图片上传失败!');
}
});
}

/**
* 图片上传成功后加载图片在页面上
*/
function loadPhoto(photoPath){
var tepath = photoPath;
j('#photoPath').attr('value',tepath);
j('#photoImg').attr('src',tepath);
}

/**
* 选择图片时把图片的文件名设置给隐藏域“fileName”
*/
function parseFileName(){
var selectedphoto = j("#photo").attr('value');
var fileName = selectedphoto.substring(selectedphoto.lastIndexOf('\\')+1);
j('#fileName').attr('value',fileName);
}
</script>
4.后台action操作
/* 上传的照片 */
private File photo;
/* 照片的名字 */
private String fileName;
public File getPhoto() {
return photo;
}

public void setPhoto(File photo) {
this.photo = photo;
}

public String getFileName() {
return fileName;
}

public void setFileName(String fileName) {
this.fileName = fileName;
}
//后台上传图片方法
public void uploadPhoto() throws IOException {
String rootPath = FileUtil.getRootPath(); //rootPath为具体路径
String photoPath = "";
if (photo != null) {
String fileType = ".jpg";
if (fileName != null && StringUtils.isNotEmpty(fileName)) {
fileType = fileName.substring(fileName.indexOf("."));
}
photoPath = "/uploaded/photo/" + 能区别的ID + fileType;

File dir = new File(rootPath + "/uploaded/photo/");
if (!dir.exists()) {
dir.mkdirs();
}
File target = new File(rootPath + photoPath);
FileUtils.copyFile(photo, target);
}
print(photoPath.toString());
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值