在做一个项目的修改工作时,遇到了这样的问题:我需要上传照片,但是无法在后台获取到图片的URL,这个该怎么弄呢?求大家帮帮忙~
上面那个图片的名称:******.jpg是点击浏览后的选则的要上传的图片的名
JSP中的代码如下:
班级图标
</th>
<td>
<div id="preview_wrapper">
<div id="preview_fake">
<img id="preview"
src="<%=basePath%><s:property value="group.iconUrl" />"
width="100px" height="100px" />
</div>
</div>
<div>
<s:file id="uploadFile" name="uploadFile"
onfocus="hideFocus=true;"
onchange="javascript:PreviewImage(); " >
</s:file>
在这里怎么获取到图片的名字,并把它传到后台呢?
Action中的代码如下:
public String update() throws Exception {
group.setGroupId(groupKey);
if(getUploadFile() != null){
imageFileName = "";
String dirName = ServletActionContext.getServletContext().getRealPath("/")+"icon/";
imageFileName = dirName+uploadFilename;
CommonUtil.copy(this.getUploadFile(), imageFileName,dirName);
group.setIconUrl("icon/"+uploadFilename );
System.out.println("重新打出当前图片的URL:"+group.getIconUrl());
}
getService().updateClass(group);
return group();
}
这个Action类中的成员变量的get,set方法已给出~用的struts+spring文件上传
上面那个图片的名称:******.jpg是点击浏览后的选则的要上传的图片的名
JSP中的代码如下:
班级图标
</th>
<td>
<div id="preview_wrapper">
<div id="preview_fake">
<img id="preview"
src="<%=basePath%><s:property value="group.iconUrl" />"
width="100px" height="100px" />
</div>
</div>
<div>
<s:file id="uploadFile" name="uploadFile"
onfocus="hideFocus=true;"
onchange="javascript:PreviewImage(); " >
</s:file>
在这里怎么获取到图片的名字,并把它传到后台呢?
Action中的代码如下:
public String update() throws Exception {
group.setGroupId(groupKey);
if(getUploadFile() != null){
imageFileName = "";
String dirName = ServletActionContext.getServletContext().getRealPath("/")+"icon/";
imageFileName = dirName+uploadFilename;
CommonUtil.copy(this.getUploadFile(), imageFileName,dirName);
group.setIconUrl("icon/"+uploadFilename );
System.out.println("重新打出当前图片的URL:"+group.getIconUrl());
}
getService().updateClass(group);
return group();
}
这个Action类中的成员变量的get,set方法已给出~用的struts+spring文件上传
实现无刷新上传文件的功能,jar齐全,下载后部署即可访问,看到上传效果。
如果是上传图片,可以在浏览器中即时预览本地图片,如果图片很大,div会自动出现滚动条,不会把页面撑坏,上传的过程中是有进度条的,批量上传也有进度条,效果还算比较美观的!基本上都是好评哦,lz不妨试一下!
嗯~谢谢,找到问题所在了!谢谢了,servlet是最基本的办法~什么时候都好用,但是现在开发基本都放弃这些最基本的东西了,各种框架弄出来,感觉反而有时候是更复杂了。。