[04] User Test 코드 작성
·
프로젝트/Archive
이전글 [03] 게시된 포스트 삭제 이전글 [03] 게시된 포스트 수정 이전글 [03] 게시된 모든 포스트 목록 보기 이전글 [03] 포스트 등록 만들기 체크 사항 로그인이 되어있어야 하며, 토큰으로 인증을 통과해야 한다. 회원만이 글 작 chordplaylist.tistory.com 목표 1. controller / 2. service로 나눠서 테스트를 진행해야 함. 1. 성공, 2. 실패 테스트 케이스를 모두 통과하는 실제 코드 작성. Exception 처리는 enum Error코드에 작성 후 호출 해서 사용 실패의 경우 enum값의 errorCode로 처리하기 when(어떤 상황일 때)를 각각 설계해 보고, Test case에 따라 예상되는 결괏값을 작성해 주기 Controller, Service ..
[JWT] JWT Exception 처리
·
프로젝트/Archive
JWT의 토큰 만료를 확인하면서 HTTP 500 에러가 발생한다는 것을 확인했다. 요구사항에서 주어진 ERROR_CODE를 확인하면 토큰 에러의 경우에는 401, Unauthorized 에러를 반환하라고 지침하고 있기 때문에 토큰과 관련한 에러를 따로 잡아주는 과정이 필요할 것 같다. 첫 번째 시도 isExpired 메서드에서 try-catch @Slf4j public class JwtUtil { ... public static boolean isExpired(String token, String secretKey) { try { return Jwts.parser().setSigningKey(secretKey).parseClaimsJws(token) .getBody().getExpiration().bef..
[03] 게시된 포스트 삭제
·
프로젝트/Archive
이전글 [03] 게시된 포스트 수정 이전글 [03] 게시된 모든 포스트 목록 보기 이전글 [03] 포스트 등록 만들기 체크 사항 로그인이 되어있어야 하며, 토큰으로 인증을 통과해야 한다. 회원만이 글 작성 가능 DTO PostRequest @AllArgsConstruc chordplaylist.tistory.com 체크사항 포스트 수정 / 삭제 ADMIN회원이나 글을 작성한 일반회원이 글에 대한 수정과 삭제를 할 수 있다. Controller ... public class PostController { private final PostService postService; ... @DeleteMapping("/{postId}") public Response deletePost(@PathVariable In..
[03] 게시된 포스트 수정
·
프로젝트/Archive
이전글 [03] 게시된 모든 포스트 목록 보기 이전글 [03] 포스트 등록 만들기 체크 사항 로그인이 되어있어야 하며, 토큰으로 인증을 통과해야 한다. 회원만이 글 작성 가능 DTO PostRequest @AllArgsConstructor @NoArgsConstructor @Getter @Builder public class Pos chordplaylist.tistory.com 체크사항 포스트 수정 / 삭제 ADMIN회원이나 글을 작성한 일반회원이 글에 대한 수정과 삭제를 할 수 있다. Controller ... public class PostController { private final PostService postService; ... @PutMapping("/{postId}") public Res..
[03] 게시된 모든 포스트 목록 보기
·
프로젝트/Archive
이전글 [03] 포스트 등록 만들기 체크 사항 로그인이 되어있어야 하며, 토큰으로 인증을 통과해야 한다. 회원만이 글 작성 가능 DTO PostRequest @AllArgsConstructor @NoArgsConstructor @Getter @Builder public class PostRequest { private String title; private S chordplaylist.tistory.com 체크사항 리스트 회원, 비회원 모두 볼 수 있다. 제목, 글쓴이, 마지막 수정날짜가 표시된다. 포스트를 클릭하면 포스트의 상세 내역을 볼 수 있다. 목록 기능은 페이징 기능이 포함된다. (Pageable 사용) 한 페이지당 default 피드 개수는 20개이다. 총 페이지 갯수가 표시된다. 작성날짜 기..
[03] 포스트 단건 상세 정보 보기 만들기
·
프로젝트/Archive
체크 사항 회원, 비회원이 모두 볼 수 있다. 글의 제목, 내용, 글쓴이, 작성 날짜, 마지막 수정 날짜까지 표시한다. Dto PostReadResponse @AllArgsConstructor @NoArgsConstructor @Getter @Builder public class PostReadResponse { private Integer id; private String title; private String body; private String userName; private LocalDateTime createdAt; private LocalDateTime lastModifiedAt; } id, title, body, userName, createdAt, lastModifiedAt의 정보를 받아오..
[03] 포스트 등록 만들기
·
프로젝트/Archive
체크 사항 로그인이 되어있어야 하며, 토큰으로 인증을 통과해야 한다. 회원만이 글 작성 가능 DTO PostRequest @AllArgsConstructor @NoArgsConstructor @Getter @Builder public class PostRequest { private String title; private String body; } 입력폼에서 요구하는 "title"과 "body"를 받아올 dto를 생성합니다. @AllArgsConstructor @NoArgsConstructor @Getter @Builder public class PostResponse { private String message; private Integer postId; } 응답폼에서 요구하는 "message"와 "p..
[03] 포스트 기능 만들기 준비
·
프로젝트/Archive
ERD Entity @AllArgsConstructor @NoArgsConstructor @Getter @Builder @Entity @ToString(callSuper = true) @EqualsAndHashCode(callSuper = true) public class Post extends BaseEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; private String body; private String title; @ManyToOne(fetch = LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "user_id") private User user;..
코드플리
'프로젝트' 카테고리의 글 목록 (2 Page)