Skip to content

Commit

Permalink
feat : 기초 구성 및 자동화
Browse files Browse the repository at this point in the history
  • Loading branch information
YASICJUNWOO committed Aug 24, 2023
1 parent eb2302c commit 753b821
Show file tree
Hide file tree
Showing 16 changed files with 121 additions and 103 deletions.
23 changes: 0 additions & 23 deletions appspec.yml

This file was deleted.

2 changes: 2 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ dependencies {
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
//testImplementation 'org.springframework.security:spring-security-test'

implementation 'org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE'
}

tasks.named('test') {
Expand Down
21 changes: 0 additions & 21 deletions scripts/start.sh

This file was deleted.

19 changes: 0 additions & 19 deletions scripts/stop.sh

This file was deleted.

22 changes: 6 additions & 16 deletions src/main/java/KJW/MBTIcoummunity/Controller/HelloController.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
package KJW.MBTIcoummunity.Controller;

import KJW.MBTIcoummunity.*;
import KJW.MBTIcoummunity.Login.LoginRequest;
import KJW.MBTIcoummunity.Login.LoginResponse;
import KJW.MBTIcoummunity.SignUp.signupRequest;
import KJW.MBTIcoummunity.SignUp.signupResponse;
import KJW.MBTIcoummunity.User.User;
import KJW.MBTIcoummunity.User.UserRepository;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;


@RestController
@RequestMapping("/")
Expand All @@ -18,19 +21,6 @@ public class HelloController {
@Autowired
UserRepository userRepository;

@Autowired
Repository repository;

@GetMapping("")
public List<ENTITY> hello() {
return repository.findAll();
}

@PostMapping("")
public ENTITY post(@RequestBody ENTITY entity) {
ENTITY saved = repository.save(entity);
return saved;
}

@PostMapping("/login")
public LoginResponse login(@RequestBody LoginRequest dto) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package KJW.MBTIcoummunity;
package KJW.MBTIcoummunity.Login;

import lombok.AllArgsConstructor;
import lombok.Getter;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package KJW.MBTIcoummunity;
package KJW.MBTIcoummunity.Login;

import lombok.AllArgsConstructor;
import lombok.Builder;
Expand Down
6 changes: 0 additions & 6 deletions src/main/java/KJW/MBTIcoummunity/Repository.java

This file was deleted.

47 changes: 47 additions & 0 deletions src/main/java/KJW/MBTIcoummunity/S3/FileUploadController.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
package KJW.MBTIcoummunity.S3;

import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.ObjectMetadata;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;


@RestController
@RequestMapping("/upload")
@RequiredArgsConstructor
public class FileUploadController {

private final AmazonS3Client amazonS3Client;

@Value("${cloud.aws.s3.bucket}")
private String bucket;

@PostMapping
public ResponseEntity<String> uploadFile(@RequestParam("file") MultipartFile file) {
try{
String fileName = file.getOriginalFilename();
String fileUrl = "Https://" + bucket + "/test" + fileName;
ObjectMetadata metadata = new ObjectMetadata();
metadata.setContentType(file.getContentType());
metadata.setContentLength(file.getSize());

amazonS3Client.putObject(bucket, fileName, file.getInputStream(), metadata);
return ResponseEntity.ok((fileUrl));

}
catch (IOException e){
e.printStackTrace();
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).build();
}

}
}
31 changes: 31 additions & 0 deletions src/main/java/KJW/MBTIcoummunity/S3/S3Config.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package KJW.MBTIcoummunity.S3;

import com.amazonaws.auth.AWSStaticCredentialsProvider;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class S3Config {

@Value("${cloud.aws.credentials.access-key}")
private String accessKey;

@Value("${cloud.aws.credentials.secret-key}")
private String secretKey;

@Value("${cloud.aws.region.static}")
private String region;

@Bean
public AmazonS3Client amazonS3Client() {
BasicAWSCredentials awsCredentials= new BasicAWSCredentials(accessKey, secretKey);
return (AmazonS3Client)AmazonS3ClientBuilder.standard()
.withRegion(region)
.withCredentials(new AWSStaticCredentialsProvider(awsCredentials))
.build();
}
}
10 changes: 10 additions & 0 deletions src/main/java/KJW/MBTIcoummunity/SignUp/signupRequest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package KJW.MBTIcoummunity.SignUp;

import lombok.Getter;

@Getter
public class signupRequest {
private String username;
private String password;
private String mbtiType;
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package KJW.MBTIcoummunity;
package KJW.MBTIcoummunity.SignUp;

import lombok.AllArgsConstructor;
import lombok.Builder;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package KJW.MBTIcoummunity;
package KJW.MBTIcoummunity.User;

import KJW.MBTIcoummunity.SignUp.signupRequest;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
Expand Down Expand Up @@ -28,9 +29,9 @@ public class User {

public static User toEntity(signupRequest dto){
return User.builder()
.mbtiType(dto.mbtiType)
.password(dto.password)
.username(dto.username)
.mbtiType(dto.getMbtiType())
.password(dto.getPassword())
.username(dto.getUsername())
.build();
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package KJW.MBTIcoummunity;
package KJW.MBTIcoummunity.User;

import org.springframework.data.jpa.repository.JpaRepository;

Expand Down
10 changes: 0 additions & 10 deletions src/main/java/KJW/MBTIcoummunity/signupRequest.java

This file was deleted.

16 changes: 16 additions & 0 deletions src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,19 @@ spring:

logging.level:
org.hibernate.SQL: debug

servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB


cloud:
aws:
s3:
bucket: mbti-pic-bucket
stack.auto: false
region.static: ap-northeast-2
credentials:
accessKey: AKIARU7MLVIAZFVW5QBC
secretKey: 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

0 comments on commit 753b821

Please sign in to comment.