Amazon 亚马逊 注释

This commit is contained in:
wangw 2025-01-04 18:15:28 +08:00
parent 464f4ba7c8
commit 74edf421d4
5 changed files with 195 additions and 193 deletions

46
pom.xml
View File

@ -23,7 +23,7 @@
<mssql.version>4.0</mssql.version> <mssql.version>4.0</mssql.version>
<oracle.version>11.2.0.3</oracle.version> <oracle.version>11.2.0.3</oracle.version>
<druid.version>1.1.13</druid.version> <druid.version>1.1.13</druid.version>
<quartz.version>2.3.0</quartz.version> <!-- <quartz.version>2.3.0</quartz.version>-->
<commons.lang.version>2.6</commons.lang.version> <commons.lang.version>2.6</commons.lang.version>
<commons.fileupload.version>1.2.2</commons.fileupload.version> <commons.fileupload.version>1.2.2</commons.fileupload.version>
<commons.io.version>2.5</commons.io.version> <commons.io.version>2.5</commons.io.version>
@ -85,17 +85,17 @@
<artifactId>guava</artifactId> <artifactId>guava</artifactId>
<version>19.0</version> <version>19.0</version>
</dependency> </dependency>
<dependency> <!-- <dependency>-->
<groupId>com.amazonaws</groupId> <!-- <groupId>com.amazonaws</groupId>-->
<artifactId>aws-java-sdk</artifactId> <!-- <artifactId>aws-java-sdk</artifactId>-->
<version>1.11.274</version> <!-- <version>1.11.274</version>-->
<exclusions> <!-- <exclusions>-->
<exclusion> <!-- <exclusion>-->
<artifactId>aws-java-sdk-simpleworkflow</artifactId> <!-- <artifactId>aws-java-sdk-simpleworkflow</artifactId>-->
<groupId>com.amazonaws</groupId> <!-- <groupId>com.amazonaws</groupId>-->
</exclusion> <!-- </exclusion>-->
</exclusions> <!-- </exclusions>-->
</dependency> <!-- </dependency>-->
<dependency> <dependency>
<groupId>cn.afterturn</groupId> <groupId>cn.afterturn</groupId>
<artifactId>easypoi-spring-boot-starter</artifactId> <artifactId>easypoi-spring-boot-starter</artifactId>
@ -325,17 +325,17 @@
<artifactId>druid-spring-boot-starter</artifactId> <artifactId>druid-spring-boot-starter</artifactId>
<version>${druid.version}</version> <version>${druid.version}</version>
</dependency> </dependency>
<dependency> <!-- <dependency>-->
<groupId>org.quartz-scheduler</groupId> <!-- <groupId>org.quartz-scheduler</groupId>-->
<artifactId>quartz</artifactId> <!-- <artifactId>quartz</artifactId>-->
<version>${quartz.version}</version> <!-- <version>${quartz.version}</version>-->
<exclusions> <!-- <exclusions>-->
<exclusion> <!-- <exclusion>-->
<groupId>com.mchange</groupId> <!-- <groupId>com.mchange</groupId>-->
<artifactId>c3p0</artifactId> <!-- <artifactId>c3p0</artifactId>-->
</exclusion> <!-- </exclusion>-->
</exclusions> <!-- </exclusions>-->
</dependency> <!-- </dependency>-->
<dependency> <dependency>
<groupId>commons-lang</groupId> <groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId> <artifactId>commons-lang</artifactId>

View File

@ -1,8 +1,8 @@
package com.sqx.modules.app.entity; package com.sqx.modules.app.entity;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.amazonaws.services.dynamodbv2.xspec.L; //import com.amazonaws.services.dynamodbv2.xspec.L;
import com.baomidou.mybatisplus.annotation.IdType; //import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
@ -12,7 +12,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; //import lombok.NoArgsConstructor;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;

View File

@ -4,9 +4,9 @@ package com.sqx.modules.file;
import com.aliyun.oss.OSS; import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder; import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.tea.TeaException; import com.aliyun.tea.TeaException;
import com.amazonaws.services.s3.AmazonS3; //import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.model.CannedAccessControlList; //import com.amazonaws.services.s3.model.CannedAccessControlList;
import com.amazonaws.services.s3.model.ObjectMetadata; //import com.amazonaws.services.s3.model.ObjectMetadata;
import com.qcloud.cos.COSClient; import com.qcloud.cos.COSClient;
import com.qcloud.cos.ClientConfig; import com.qcloud.cos.ClientConfig;
import com.qcloud.cos.auth.BasicCOSCredentials; import com.qcloud.cos.auth.BasicCOSCredentials;
@ -56,12 +56,14 @@ public class AliFileUploadController {
private final CommonInfoService commonRepository; private final CommonInfoService commonRepository;
private AmazonS3 amazonS3; // private AmazonS3 amazonS3;
@Autowired @Autowired
public AliFileUploadController(CommonInfoService commonRepository, AmazonS3 amazonS3) { public AliFileUploadController(CommonInfoService commonRepository
// , AmazonS3 amazonS3
) {
this.commonRepository = commonRepository; this.commonRepository = commonRepository;
this.amazonS3 = amazonS3; // this.amazonS3 = amazonS3;
} }
@GetMapping(value = "/getCredentials") @GetMapping(value = "/getCredentials")
@ -164,24 +166,24 @@ public class AliFileUploadController {
cosclient.shutdown(); cosclient.shutdown();
} }
}else if("3".equals(value)){ }else if("3".equals(value)){
String suffix = file.getOriginalFilename().substring(Objects.requireNonNull(file.getOriginalFilename()).lastIndexOf(".")); // String suffix = file.getOriginalFilename().substring(Objects.requireNonNull(file.getOriginalFilename()).lastIndexOf("."));
// 上传文件流 // // 上传文件流
InputStream inputStream = null; // InputStream inputStream = null;
try { // try {
inputStream =new ByteArrayInputStream(file.getBytes()); // inputStream =new ByteArrayInputStream(file.getBytes());
} catch (IOException e) { // } catch (IOException e) {
e.printStackTrace(); // e.printStackTrace();
} // }
String completePath=getPath(suffix); // String completePath=getPath(suffix);
String bucket=commonRepository.findOne(810).getValue(); // String bucket=commonRepository.findOne(810).getValue();
com.amazonaws.services.s3.model.PutObjectRequest putObjectRequest = new com.amazonaws.services.s3.model.PutObjectRequest(bucket, completePath, inputStream, new ObjectMetadata()); // com.amazonaws.services.s3.model.PutObjectRequest putObjectRequest = new com.amazonaws.services.s3.model.PutObjectRequest(bucket, completePath, inputStream, new ObjectMetadata());
//
putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead); // putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead);
//
com.amazonaws.services.s3.model.PutObjectResult putObjectResult = amazonS3.putObject(putObjectRequest); // com.amazonaws.services.s3.model.PutObjectResult putObjectResult = amazonS3.putObject(putObjectRequest);
//
IOUtils.closeQuietly(inputStream); // IOUtils.closeQuietly(inputStream);
return Result.success().put("data",commonRepository.findOne(811).getValue()+"/"+completePath); // return Result.success().put("data",commonRepository.findOne(811).getValue()+"/"+completePath);
}else if("4".equals(value)){ }else if("4".equals(value)){
String endpoint = "tos-cn-beijing.volces.com"; String endpoint = "tos-cn-beijing.volces.com";
String region = "cn-beijing"; String region = "cn-beijing";
@ -301,24 +303,24 @@ public class AliFileUploadController {
cosclient.shutdown(); cosclient.shutdown();
} }
}else if("3".equals(value)){ }else if("3".equals(value)){
String suffix = file.getOriginalFilename().substring(Objects.requireNonNull(file.getOriginalFilename()).lastIndexOf(".")); // String suffix = file.getOriginalFilename().substring(Objects.requireNonNull(file.getOriginalFilename()).lastIndexOf("."));
// 上传文件流 // // 上传文件流
InputStream inputStream = null; // InputStream inputStream = null;
try { // try {
inputStream =new ByteArrayInputStream(file.getBytes()); // inputStream =new ByteArrayInputStream(file.getBytes());
} catch (IOException e) { // } catch (IOException e) {
e.printStackTrace(); // e.printStackTrace();
} // }
String completePath=getPath(suffix); // String completePath=getPath(suffix);
String bucket=commonRepository.findOne(810).getValue(); // String bucket=commonRepository.findOne(810).getValue();
com.amazonaws.services.s3.model.PutObjectRequest putObjectRequest = new com.amazonaws.services.s3.model.PutObjectRequest(bucket, completePath, inputStream, new ObjectMetadata()); // com.amazonaws.services.s3.model.PutObjectRequest putObjectRequest = new com.amazonaws.services.s3.model.PutObjectRequest(bucket, completePath, inputStream, new ObjectMetadata());
//
putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead); // putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead);
//
com.amazonaws.services.s3.model.PutObjectResult putObjectResult = amazonS3.putObject(putObjectRequest); // com.amazonaws.services.s3.model.PutObjectResult putObjectResult = amazonS3.putObject(putObjectRequest);
//
IOUtils.closeQuietly(inputStream); // IOUtils.closeQuietly(inputStream);
return commonRepository.findOne(811).getValue()+"/"+completePath; // return commonRepository.findOne(811).getValue()+"/"+completePath;
}else if("4".equals(value)){ }else if("4".equals(value)){
String endpoint = "tos-cn-beijing.volces.com"; String endpoint = "tos-cn-beijing.volces.com";
String region = "cn-beijing"; String region = "cn-beijing";

View File

@ -1,91 +1,91 @@
package com.sqx.modules.file; //package com.sqx.modules.file;
//
import com.amazonaws.services.s3.AmazonS3; //import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.model.*; //import com.amazonaws.services.s3.model.*;
import com.sqx.modules.common.service.CommonInfoService; //import com.sqx.modules.common.service.CommonInfoService;
import org.apache.commons.io.IOUtils; //import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders; //import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus; //import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType; //import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity; //import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service; //import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils; //import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile; //import org.springframework.web.multipart.MultipartFile;
//
import java.io.FileInputStream; //import java.io.FileInputStream;
import java.io.FileNotFoundException; //import java.io.FileNotFoundException;
import java.io.IOException; //import java.io.IOException;
import java.io.InputStream; //import java.io.InputStream;
import java.net.URLEncoder; //import java.net.URLEncoder;
import java.util.ArrayList; //import java.util.ArrayList;
import java.util.Arrays; //import java.util.Arrays;
import java.util.List; //import java.util.List;
//
@Service //@Service
public class S3Service { //public class S3Service {
//
@Autowired // @Autowired
private AmazonS3 amazonS3; // private AmazonS3 amazonS3;
@Autowired // @Autowired
private CommonInfoService commonInfoService; // private CommonInfoService commonInfoService;
//
private PutObjectResult upload(String filePath, String uploadKey) throws FileNotFoundException { // private PutObjectResult upload(String filePath, String uploadKey) throws FileNotFoundException {
return upload(new FileInputStream(filePath), uploadKey); // return upload(new FileInputStream(filePath), uploadKey);
} // }
//
private PutObjectResult upload(InputStream inputStream, String uploadKey) { // private PutObjectResult upload(InputStream inputStream, String uploadKey) {
PutObjectRequest putObjectRequest = new PutObjectRequest(commonInfoService.findOne(810).getValue(), uploadKey, inputStream, new ObjectMetadata()); // PutObjectRequest putObjectRequest = new PutObjectRequest(commonInfoService.findOne(810).getValue(), uploadKey, inputStream, new ObjectMetadata());
//
putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead); // putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead);
//
PutObjectResult putObjectResult = amazonS3.putObject(putObjectRequest); // PutObjectResult putObjectResult = amazonS3.putObject(putObjectRequest);
//
IOUtils.closeQuietly(inputStream); // IOUtils.closeQuietly(inputStream);
//
return putObjectResult; // return putObjectResult;
} // }
//
public List<PutObjectResult> upload(MultipartFile[] multipartFiles) { // public List<PutObjectResult> upload(MultipartFile[] multipartFiles) {
List<PutObjectResult> putObjectResults = new ArrayList<>(); // List<PutObjectResult> putObjectResults = new ArrayList<>();
//
Arrays.stream(multipartFiles) // Arrays.stream(multipartFiles)
.filter(multipartFile -> !StringUtils.isEmpty(multipartFile.getOriginalFilename())) // .filter(multipartFile -> !StringUtils.isEmpty(multipartFile.getOriginalFilename()))
.forEach(multipartFile -> { // .forEach(multipartFile -> {
try { // try {
putObjectResults.add(upload(multipartFile.getInputStream(), multipartFile.getOriginalFilename())); // putObjectResults.add(upload(multipartFile.getInputStream(), multipartFile.getOriginalFilename()));
} catch (IOException e) { // } catch (IOException e) {
e.printStackTrace(); // e.printStackTrace();
} // }
}); // });
//
return putObjectResults; // return putObjectResults;
} // }
//
public ResponseEntity<byte[]> download(String key) throws IOException { // public ResponseEntity<byte[]> download(String key) throws IOException {
GetObjectRequest getObjectRequest = new GetObjectRequest(commonInfoService.findOne(810).getValue(), key); // GetObjectRequest getObjectRequest = new GetObjectRequest(commonInfoService.findOne(810).getValue(), key);
//
S3Object s3Object = amazonS3.getObject(getObjectRequest); // S3Object s3Object = amazonS3.getObject(getObjectRequest);
//
S3ObjectInputStream objectInputStream = s3Object.getObjectContent(); // S3ObjectInputStream objectInputStream = s3Object.getObjectContent();
//
byte[] bytes = IOUtils.toByteArray(objectInputStream); // byte[] bytes = IOUtils.toByteArray(objectInputStream);
//
String fileName = URLEncoder.encode(key, "UTF-8").replaceAll("\\+", "%20"); // String fileName = URLEncoder.encode(key, "UTF-8").replaceAll("\\+", "%20");
//
HttpHeaders httpHeaders = new HttpHeaders(); // HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setContentType(MediaType.APPLICATION_OCTET_STREAM); // httpHeaders.setContentType(MediaType.APPLICATION_OCTET_STREAM);
httpHeaders.setContentLength(bytes.length); // httpHeaders.setContentLength(bytes.length);
httpHeaders.setContentDispositionFormData("attachment", fileName); // httpHeaders.setContentDispositionFormData("attachment", fileName);
//
return new ResponseEntity<>(bytes, httpHeaders, HttpStatus.OK); // return new ResponseEntity<>(bytes, httpHeaders, HttpStatus.OK);
} // }
//
public List<S3ObjectSummary> list() { // public List<S3ObjectSummary> list() {
ObjectListing objectListing = amazonS3.listObjects(new ListObjectsRequest().withBucketName(commonInfoService.findOne(810).getValue())); // ObjectListing objectListing = amazonS3.listObjects(new ListObjectsRequest().withBucketName(commonInfoService.findOne(810).getValue()));
//
List<S3ObjectSummary> s3ObjectSummaries = objectListing.getObjectSummaries(); // List<S3ObjectSummary> s3ObjectSummaries = objectListing.getObjectSummaries();
//
return s3ObjectSummaries; // return s3ObjectSummaries;
} // }
} //}

View File

@ -1,34 +1,34 @@
package com.sqx.modules.file.config; //package com.sqx.modules.file.config;
//
import com.amazonaws.auth.AWSCredentials; //import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSStaticCredentialsProvider; //import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials; //import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.s3.AmazonS3; //import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder; //import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import com.sqx.modules.common.service.CommonInfoService; //import com.sqx.modules.common.service.CommonInfoService;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean; //import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; //import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component; //import org.springframework.stereotype.Component;
//
@Configuration //@Configuration
@Component //@Component
public class AWSConfiguration { //public class AWSConfiguration {
//
@Autowired // @Autowired
private CommonInfoService commonInfoService; // private CommonInfoService commonInfoService;
//
@Bean // @Bean
public BasicAWSCredentials basicAWSCredentials() { // public BasicAWSCredentials basicAWSCredentials() {
return new BasicAWSCredentials(commonInfoService.findOne(807).getValue(), commonInfoService.findOne(808).getValue()); // return new BasicAWSCredentials(commonInfoService.findOne(807).getValue(), commonInfoService.findOne(808).getValue());
} // }
//
@Bean // @Bean
public AmazonS3 amazonS3Client(AWSCredentials awsCredentials) { // public AmazonS3 amazonS3Client(AWSCredentials awsCredentials) {
AmazonS3ClientBuilder builder = AmazonS3ClientBuilder.standard(); // AmazonS3ClientBuilder builder = AmazonS3ClientBuilder.standard();
builder.withCredentials(new AWSStaticCredentialsProvider(awsCredentials)); // builder.withCredentials(new AWSStaticCredentialsProvider(awsCredentials));
builder.setRegion(commonInfoService.findOne(809).getValue()); // builder.setRegion(commonInfoService.findOne(809).getValue());
AmazonS3 amazonS3 = builder.build(); // AmazonS3 amazonS3 = builder.build();
return amazonS3; // return amazonS3;
} // }
} //}