From eb631cd97c9daee699220b1e4d1775aacbd703fc Mon Sep 17 00:00:00 2001 From: LeeHeeSung98989898 <107474367+LeeHeeSung98989898@users.noreply.github.com> Date: Mon, 10 Apr 2023 16:44:58 +0900 Subject: [PATCH 1/4] Update deployment.yml --- .github/workflows/deployment.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml index fa71bf4..1cb9284 100644 --- a/.github/workflows/deployment.yml +++ b/.github/workflows/deployment.yml @@ -46,10 +46,10 @@ jobs: - name: Send jar to remote server uses: appleboy/scp-action@master with: - host: {나의 public ip} - username: {나의 userName} + host: 34.64.193.87 + username: goqpqp234 source: "real_coding_server-0.0.1-SNAPSHOT.jar" - target: "/home/adulkid.kaya" + target: "/home/goqpqp234" key: ${{ secrets.PRIVATE_KEY }} run-app: @@ -61,16 +61,16 @@ jobs: - name: Move deploy.sh uses: appleboy/scp-action@master with: - host: {나의 public ip} - username: {나의 userName} + host: 34.64.193.87 + username: goqpqp234 source: "deploy.sh" - target: "/home/{나의 userName}" + target: "/home/goqpqp234" key: ${{ secrets.PRIVATE_KEY }} - name: Execute script uses: appleboy/ssh-action@master with: - username: {나의 userName} - host: {나의 public ip} + username: goqpqp234 + host: 34.64.193.87 key: ${{ secrets.PRIVATE_KEY }} script_stop: true script: cd /home/{나의 userName} && chmod +x deploy.sh && ./deploy.sh From 4ab52b2a7975a08dde54c65c0ff8a3514748a0f6 Mon Sep 17 00:00:00 2001 From: LeeHeeSung98989898 <107474367+LeeHeeSung98989898@users.noreply.github.com> Date: Mon, 10 Apr 2023 16:50:54 +0900 Subject: [PATCH 2/4] Update deployment.yml --- .github/workflows/deployment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml index 1cb9284..24768f9 100644 --- a/.github/workflows/deployment.yml +++ b/.github/workflows/deployment.yml @@ -73,4 +73,4 @@ jobs: host: 34.64.193.87 key: ${{ secrets.PRIVATE_KEY }} script_stop: true - script: cd /home/{나의 userName} && chmod +x deploy.sh && ./deploy.sh + script: cd /home/goqpqp234 && chmod +x deploy.sh && ./deploy.sh From 25485b497d1f86865c152e94a290c717c73ea813 Mon Sep 17 00:00:00 2001 From: rladbrua0207 <48901587+rladbrua0207@users.noreply.github.com> Date: Fri, 21 Apr 2023 20:46:15 +0900 Subject: [PATCH 3/4] 201902741 --- .../config/WebMVCConfig.java | 16 ------ .../controller/PostController.java | 46 +++++++++------- .../controller/ProjectController.java | 52 +++++++++++++++++++ .../cnu/real_coding_server/entity/Post.java | 2 +- .../model/request/PostRequest.java | 2 - .../repository/PostRepository.java | 11 ++-- .../repository/ProjectRepository.java | 13 ++--- .../service/PostService.java | 40 ++++++++------ .../service/ProjectService.java | 51 ++++++++++++++++++ 9 files changed, 168 insertions(+), 65 deletions(-) delete mode 100644 src/main/java/com/cnu/real_coding_server/config/WebMVCConfig.java create mode 100644 src/main/java/com/cnu/real_coding_server/controller/ProjectController.java create mode 100644 src/main/java/com/cnu/real_coding_server/service/ProjectService.java diff --git a/src/main/java/com/cnu/real_coding_server/config/WebMVCConfig.java b/src/main/java/com/cnu/real_coding_server/config/WebMVCConfig.java deleted file mode 100644 index 2348439..0000000 --- a/src/main/java/com/cnu/real_coding_server/config/WebMVCConfig.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.cnu.real_coding_server.config; - -import org.springframework.context.annotation.Configuration; -import org.springframework.web.servlet.config.annotation.CorsRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; - -@Configuration -public class WebMVCConfig implements WebMvcConfigurer { - @Override - public void addCorsMappings(CorsRegistry registry) { - registry.addMapping("/**") - .allowCredentials(true) - .allowedMethods("*") - .allowedOriginPatterns("*"); - } -} diff --git a/src/main/java/com/cnu/real_coding_server/controller/PostController.java b/src/main/java/com/cnu/real_coding_server/controller/PostController.java index c31c90e..7dd064c 100644 --- a/src/main/java/com/cnu/real_coding_server/controller/PostController.java +++ b/src/main/java/com/cnu/real_coding_server/controller/PostController.java @@ -4,42 +4,50 @@ import com.cnu.real_coding_server.model.request.PostRequest; import com.cnu.real_coding_server.service.PostService; import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController -@RequestMapping("/posts") @RequiredArgsConstructor public class PostController { + private final PostService postService; - @PostMapping - public ResponseEntity createPost(@RequestBody PostRequest postRequest) { - return ResponseEntity.ok(postService.createPost(postRequest)); + @PostMapping("post") + public ResponseEntity save( + @RequestBody PostRequest postRequest + ) { + postService.save(postRequest); + return new ResponseEntity<>(HttpStatus.OK); } - @GetMapping - public ResponseEntity> getPosts() { - return ResponseEntity.ok(postService.getPosts()); + @GetMapping("post") + public ResponseEntity findAllPost() { + List postList = postService.findAll(); + return new ResponseEntity<>(postList, HttpStatus.OK); } - @GetMapping("/{postId}") - public ResponseEntity getPost(@PathVariable("postId") Integer postId) { - return ResponseEntity.ok(postService.getPost(postId).orElse(null)); + @GetMapping("post/{postId}") + public ResponseEntity findPostById(@PathVariable Integer postId) { + Post post = postService.findById(postId); + return new ResponseEntity<>(post, HttpStatus.OK); } - @PutMapping("/{postId}") - public ResponseEntity updatePost(@PathVariable("postId")Integer postId, - @RequestBody PostRequest postRequest) { - return ResponseEntity.ok(postService.updatePost(postId, postRequest).orElse(null)); + @PutMapping("post/{postId}") + public ResponseEntity editPostPyId( + @PathVariable Integer postId, + @RequestBody PostRequest postRequest) { + postService.edit(postId, postRequest); + return new ResponseEntity<>(HttpStatus.CREATED); } - @DeleteMapping("/{postId}") - public ResponseEntity deletePost(@PathVariable("postId") Integer postId) { - postService.deletePost(postId); - - return ResponseEntity.noContent().build(); + @DeleteMapping("post/{postId}") + public ResponseEntity editPostPyId( + @PathVariable Integer postId) { + postService.delete(postId); + return new ResponseEntity<>(HttpStatus.CREATED); } } diff --git a/src/main/java/com/cnu/real_coding_server/controller/ProjectController.java b/src/main/java/com/cnu/real_coding_server/controller/ProjectController.java new file mode 100644 index 0000000..299a125 --- /dev/null +++ b/src/main/java/com/cnu/real_coding_server/controller/ProjectController.java @@ -0,0 +1,52 @@ +package com.cnu.real_coding_server.controller; + +import com.cnu.real_coding_server.entity.Project; +import com.cnu.real_coding_server.model.request.ProjectRequest; +import com.cnu.real_coding_server.service.ProjectService; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class ProjectController { + private final ProjectService projectService; + + @PostMapping("project") + public ResponseEntity save( + @RequestBody ProjectRequest projectRequest + ) { + projectService.save(projectRequest); + return new ResponseEntity<>(HttpStatus.OK); + } + + @GetMapping("project") + public ResponseEntity findAllProject() { + List projectList = projectService.findAll(); + return new ResponseEntity<>(projectList, HttpStatus.OK); + } + + @GetMapping("project/{projectId}") + public ResponseEntity findProjectById(@PathVariable Integer projectId) { + Project project = projectService.findById(projectId); + return new ResponseEntity<>(project, HttpStatus.OK); + } + + @PutMapping("project/{projectId}") + public ResponseEntity editProjectPyId( + @PathVariable Integer projectId, + @RequestBody ProjectRequest projectRequest) { + projectService.edit(projectId, projectRequest); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @DeleteMapping("project/{projectId}") + public ResponseEntity editProjectPyId( + @PathVariable Integer projectId) { + projectService.delete(projectId); + return new ResponseEntity<>(HttpStatus.CREATED); + } +} diff --git a/src/main/java/com/cnu/real_coding_server/entity/Post.java b/src/main/java/com/cnu/real_coding_server/entity/Post.java index bb99748..e09973f 100644 --- a/src/main/java/com/cnu/real_coding_server/entity/Post.java +++ b/src/main/java/com/cnu/real_coding_server/entity/Post.java @@ -20,8 +20,8 @@ public class Post extends BaseEntity { @Setter private String contents; - @Setter @Enumerated(EnumType.STRING) + @Setter private Tag tag; @Builder diff --git a/src/main/java/com/cnu/real_coding_server/model/request/PostRequest.java b/src/main/java/com/cnu/real_coding_server/model/request/PostRequest.java index 5bd6733..e8943c1 100644 --- a/src/main/java/com/cnu/real_coding_server/model/request/PostRequest.java +++ b/src/main/java/com/cnu/real_coding_server/model/request/PostRequest.java @@ -3,12 +3,10 @@ import com.cnu.real_coding_server.entity.Post; import com.cnu.real_coding_server.model.type.Tag; -import jakarta.validation.Valid; import lombok.Getter; @Getter public class PostRequest { - @Valid private String title; private String contents; diff --git a/src/main/java/com/cnu/real_coding_server/repository/PostRepository.java b/src/main/java/com/cnu/real_coding_server/repository/PostRepository.java index 0366c87..6364975 100644 --- a/src/main/java/com/cnu/real_coding_server/repository/PostRepository.java +++ b/src/main/java/com/cnu/real_coding_server/repository/PostRepository.java @@ -4,10 +4,13 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; +import java.util.List; +import java.util.Optional; + @Repository public interface PostRepository extends JpaRepository { -// Post save(Post post); -// List findAll(); -// Optional findById(Integer postId); -// void delete(Post post); + Post save(Post post); + List findAll(); + Optional findById(Integer postId); + void delete(Post post); } diff --git a/src/main/java/com/cnu/real_coding_server/repository/ProjectRepository.java b/src/main/java/com/cnu/real_coding_server/repository/ProjectRepository.java index 2296df6..e990c7c 100644 --- a/src/main/java/com/cnu/real_coding_server/repository/ProjectRepository.java +++ b/src/main/java/com/cnu/real_coding_server/repository/ProjectRepository.java @@ -2,12 +2,13 @@ import com.cnu.real_coding_server.entity.Project; import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.stereotype.Repository; -@Repository +import java.util.List; +import java.util.Optional; + public interface ProjectRepository extends JpaRepository { -// Project save(Project post); -// List findAll(); -// Optional findById(Integer projectId); -// void delete(Project projectId); + Project save(Project project); + List findAll(); + Optional findById(Integer projectId); + void delete(Project project); } diff --git a/src/main/java/com/cnu/real_coding_server/service/PostService.java b/src/main/java/com/cnu/real_coding_server/service/PostService.java index 490a745..0e20d26 100644 --- a/src/main/java/com/cnu/real_coding_server/service/PostService.java +++ b/src/main/java/com/cnu/real_coding_server/service/PostService.java @@ -5,40 +5,46 @@ import com.cnu.real_coding_server.repository.PostRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.List; -import java.util.Optional; @Service +@Transactional @RequiredArgsConstructor public class PostService { private final PostRepository postRepository; - public Post createPost(PostRequest postRequest) { - return postRepository.save(postRequest.toEntity()); + public void save(PostRequest postRequest) { + postRepository.save(postRequest.toEntity()); } - public List getPosts() { + public Post findById(Integer postId) { + return getPost(postId); + } + + public List findAll() { return postRepository.findAll(); } - public Optional getPost(Integer postId) { - return postRepository.findById(postId); + public void edit(Integer postId, PostRequest postRequest) { + Post post = getPost(postId); + + post.setTitle(postRequest.getTitle()); + post.setContents(postRequest.getContents()); + post.setTag(postRequest.getTag()); } - public Optional updatePost(Integer postId, PostRequest postRequest) { - return postRepository.findById(postId) - .map(post -> { - post.setTitle(postRequest.getTitle()); - post.setContents(postRequest.getContents()); - post.setTag(postRequest.getTag()); - return postRepository.save(post); - }); + public void delete(Integer postId) { + Post post = getPost(postId); + + postRepository.delete(post); } - public void deletePost(Integer postId) { - postRepository.findById(postId) - .ifPresent(postRepository::delete); + private Post getPost(Integer postId) { + return postRepository.findById(postId).stream().findAny() + .orElseThrow(() -> new RuntimeException("포스트가 존재하지 않습니다.")); } + } diff --git a/src/main/java/com/cnu/real_coding_server/service/ProjectService.java b/src/main/java/com/cnu/real_coding_server/service/ProjectService.java new file mode 100644 index 0000000..9d3117b --- /dev/null +++ b/src/main/java/com/cnu/real_coding_server/service/ProjectService.java @@ -0,0 +1,51 @@ +package com.cnu.real_coding_server.service; + +import com.cnu.real_coding_server.entity.Project; +import com.cnu.real_coding_server.model.request.ProjectRequest; +import com.cnu.real_coding_server.repository.ProjectRepository; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +@Service +@Transactional +@RequiredArgsConstructor +public class ProjectService { + + private final ProjectRepository projectRepository; + + public void save(ProjectRequest projectRequest) { + projectRepository.save(projectRequest.toEntity()); + } + + public Project findById(Integer projectId) { + return getProject(projectId); + } + + public List findAll() { + return projectRepository.findAll(); + } + + public void edit(Integer projectId, ProjectRequest projectRequest) { + Project project = getProject(projectId); + + project.setTitle(projectRequest.getTitle()); + project.setDescription(projectRequest.getDescription()); + project.setSummary(projectRequest.getSummary()); + project.setEndDate(projectRequest.getEndDate()); + project.setStartDate(projectRequest.getStartDate()); + project.setIsInProgress(projectRequest.getIsInProgress()); + } + + public void delete(Integer projectId) { + projectRepository.findById(projectId).ifPresent(projectRepository::delete); + } + + private Project getProject(Integer projectId) { + return projectRepository.findById(projectId).stream().findAny() + .orElseThrow(() -> new RuntimeException("포스트가 존재하지 않습니다.")); + } + +} From 8b40f9ce6470e120e067eb85946d8b6cf90cdfb1 Mon Sep 17 00:00:00 2001 From: LeeHeeSung98989898 Date: Fri, 21 Apr 2023 20:49:17 +0900 Subject: [PATCH 4/4] 201902741 --- gradlew | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 gradlew diff --git a/gradlew b/gradlew old mode 100755 new mode 100644