请教各位问题:java web客户端上传图片到服务器的D盘下,请问客户端怎么通过http访问图片
如果想让tomcat服务器访问指定磁盘 上的静态资源,可在tomcat/conf/serverxml中查找<Host></Host>,在标签中添加如下标签<Context path="/file" docBase="D:/img" reloadable="true"/>,再通过localhost:8080/file地址来访问路境内的文件:
如要访问名为d:/img/catpng的,则localhost:8080/file/catpng
大概流程:
1上传插件的选择:此篇博文选择的是jQuery的zyupload文件上传插件;
2上传请求发起后,java代码的处理:你是要将上传的只保存在服务器还是只保存在数据库还是说两者都采取。上传到服务器很简单,保存到数据库也很简单,但是此处需要考虑业务,保存在数据库时采用哪种保存方式(本博文业务来自于项目,因为数量巨多,故在数据库是通过保存的路径实现的,并非二进制流);
3保存在数据库后,在前段页面的回显功能。
String realpath = ServletActionContextgetServletContext()getRealPath("/upload") ;//获取服务器路径
String[] targetFileName = uploadFileName;
for (int i = 0; i < uploadlength; i++) {
File target = new File(realpath, targetFileName[i]);
FileUtilscopyFile(upload[i], target);
//这是一个文件复制类copyFile()里面就是IO操作,如果你不用这个类也可以自己写一个IO复制文件的类
}
其中private File[] upload;// 实际上传文件
private String[] uploadContentType; // 文件的内容类型
private String[] uploadFileName; // 上传文件名
这三个参数必须这样命名,因为文件上传控件默认是封装了这3个参数的,且在action里面他们应有get,set方法
0条评论