Javaweb项目用器七牛云搭建图片服务器
的有关信息介绍如下:这里是javaweb项目用七牛云实现图片服务器实现图片服务器的功能,需要注意的是这里的javaweb项目没有maven环境
首次是七牛云的注册,以及七牛云存储空间的创建,这里就省略不再详细介绍
然后在七牛云里面下载的相应的jar包。
首先是前台的代码,运用form表单提交,可以使用图片上传的图片的插件。
ENCTYPE="multipart/form-data"表单提交会有这个属性,如果用ajax提交可以这个属性不好引入。
utils包里面的类:
import java.io.IOException;
import com.qiniu.common.QiniuException;
import com.qiniu.common.Zone;
import com.qiniu.http.Response;
import com.qiniu.storage.Configuration;
import com.qiniu.storage.UploadManager;
import com.qiniu.util.Auth;
public class QiniuyunUtils {
// 设置好账号的ACCESS_KEY和SECRET_KEY
String ACCESS_KEY ="你的ACCESS_KEY ";
String SECRET_KEY ="你的SECRET_KEY ";
//要上传的空间--
String bucketname ="你的存储空间的名字";
// 密钥配置
Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY);
// 创建上传对象
Configuration c = new Configuration(Zone.zone0());
UploadManager uploadManager = new UploadManager(c);
// 简单上传,使用默认策略,只需要设置上传的空间名就可以了
public String getUpToken() {
// return auth.uploadToken(bucketname, null, 7200, null);
return auth.uploadToken(bucketname,null,7200,null,true);
// return uptoken;
}
public Boolean upload(byte[] file, String key) throws IOException {
Boolean flag=false;
try {
// 调用put方法上传
Response res = uploadManager.put(file, key, getUpToken());
// 打印返回的信息
System.out.println("返回的Response res = uploadManager.put(file, key, getUpToken());的值为:=="+res.bodyString());
if(res!=null){
flag=true;
}
} catch (QiniuException e) {
Response r = e.response;
// 请求失败时打印的异常的信息
System.out.println(r.toString());
try {
// 响应的文本信息
System.out.println(r.bodyString());
} catch (QiniuException e1) {
// ignore
}
}
return flag;
}
/**
* 上传文件
*
* @param file
* byte
* @param key
* 文件名
* @throws Exception
*/
public Boolean uploadFile(byte[] file, String key) throws Exception {
Boolean flag=new QiniuyunUtils().upload(file, key);
return flag;
}
}
然后是controller里面的类:
@RequestMapping(value = "saveRepairType", method = RequestMethod.POST)
public String saveRepairType(@RequestParam("photo")MultipartFile[] photo,MultipartHttpServletRequest multipartRequest,HttpServletRequest request) throws Exception {
String family_img="";
try {
for (int i = 0;i System.out.println("第~~~~"+i+"photo的BEGIN上传~~~"); String fileName3 = photo[i].getOriginalFilename(); //用getOriginalFilename的得到的文件名字; fileName3=UUID.randomUUID()+"_"+fileName3;//使文件名不重复 System.out.println(" String fileName = photo[i].getOriginalFilename()获得的参数==="+fileName3); MultipartFile uploadfile=photo[i]; System.out.println("MultipartFile uploadfile=photo[i];uploadfile的值为:=~~~~~~~~~~~~~==="+uploadfile); if (uploadfile.isEmpty()) { throw new Exception("文件不存在!"); } //将图片的信息转换为字节数组 byte[] fileByte = uploadfile.getBytes(); System.out.println("fileByte的值为~~~~~~~"+fileByte); //七牛云上传开始 Boolean flag=new QiniuyunUtils().uploadFile(fileByte,fileName3); System.out.println("第~~~~~~"+i+"张图片是否上传成功"+flag); System.out.println("第~~~~"+i+"photo的上传END~~~"); System.out.println("..................................."+photo.toString()); } } catch (Exception e) { System.out.println("异常是什么?++=="+e); throw new Exception("图片上传失败!"); } return family_img; } 应该使用的jar包: