SpringMVC上传文件
来源:互联网 发布:最早睡直播软件 编辑:程序博客网 时间:2024/06/05 07:17
1、maven依赖(spring依赖省略)
<dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-s3</artifactId> <version>1.10.76</version></dependency>
2、springmvc.xml配置
<bean id="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize"><value>100000</value></property> <property name="defaultEncoding"><value>UTF-8</value></property> </bean>
3、controller层
@RequestMapping(value = "upload", method = RequestMethod.POST)@ResponseBodypublic String upload(HttpServletRequest request, @RequestParam(value = "file") MultipartFile file) { return UploadUtils.upload(file);}
4、上传至Amazon s3工具类(UploadUtils.java)
public static String upload(String userKey, MultipartFile file) { AWSCredentials credentials = new BasicAWSCredentials("amazons3.accessKey", "amazons3.secretKey"); ClientConfiguration clientConfig = new ClientConfiguration(); clientConfig.setProtocol(Protocol.HTTP); AmazonS3 s3 = new AmazonS3Client(credentials, clientConfig); s3.setEndpoint("amazons3.endpoint"); String bucketName = "bucketname"; String key = "img/" + userKey; URL url = null; try { if (!s3.doesBucketExist(bucketName)) { s3.createBucket(bucketName); } ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentLength(file.getSize()); metadata.setContentType(file.getContentType()); s3.putObject(new PutObjectRequest(bucketName, key, file.getInputStream(), metadata)); s3.setObjectAcl(bucketName, key, CannedAccessControlList.PublicRead); GeneratePresignedUrlRequest urlRequest = new GeneratePresignedUrlRequest(bucketName, key); Date expirationDate = null; try { expirationDate = new SimpleDateFormat("yyyy-MM-dd").parse("2050-12-31"); } catch (ParseException e) { e.printStackTrace(); } urlRequest.setExpiration(expirationDate); url = s3.generatePresignedUrl(urlRequest); } catch (AmazonClientException | IOException e) { e.printStackTrace(); } return url.toString();}
0 0
- springMVC(11) springMVC文件上传
- SpringMVC-----8、SpringMVC上传文件
- springmvc文件上传总结
- SpringMVC multipart文件上传
- SpringMVC中的文件上传
- springmvc的文件上传
- springMVC上传文件
- springMVC 文件上传
- SpringMVC - 文件上传篇
- springMVC文件上传
- springMVC文件上传
- springMVC文件上传
- SpringMVC 上传文件
- SpringMVC文件上传
- springMVC上传文件
- springMVC上传文件例子
- springMVC上传文件
- springmvc文件上传错误
- linux安装VPN server之L2TP VPN
- 理解CAS算法在JAVA中的作用
- 湖南省第七届省赛 G - 最优对称路径(spfa+dp)
- 面试题--java中volatile关键字的含义
- Android开发框架 AndBase
- SpringMVC上传文件
- 设计模式之创建型模式
- AsyncTask异步操作的使用
- 【软件工程】--概述
- 移动端swiper.js中的坑------你怎能错过!!!!
- MFC中如何处理动态生成的按钮的点击消息
- Codeforces#371
- 面试题
- Java基础之(三十五)输入输出<三>