•
남은기능
◦
소셜로그인 부분 + 테스트코드(서비스 레이어)
◦
Docker + CI/CD
부하테스트,스트레스 테스트 툴 - 배포이후에 테스트 하는게 좋음
Trouble shooting
•
PathVariable, name 생략 문제
◦
Controller에서 @PathVariable을 이용하여 Post, GetMapping 등 을 사용할때 발생
java.lang.IllegalArgumentException: Name for argument of type
[java.lang.Long] not specified, and parameter name information
not available via reflection. Ensure that the compiler uses the '-parameters' flag.
JavaScript
복사
◦
Spring boot 3.2 버전 파라미터 인식 문제
▪
3.2버전 부터는 자바 컴파일러에 -parameters 옵션을 넣어주어야 애노테이션의 이름을 생략할 수 있다.
▪
@RequestParam, @PathVariable 두 어노테이션에서 발생하는 문제
◦
해결 방법
▪
각각의 어노테이션에 name을 생략하지 않고 달아준다.
•
이 부분은 팀원들과 협업을 하고 있기때문에 생략하는 것으로 정했다.
▪
Intellij Settings에서 Java Compiler의 Additional command line parameters항목에 -paramters 를 추가하고 out폴더를 삭제한 뒤 다시 실행한다.
▪
Build, Execution, Deployment의 Build Tools에서 Intellij IDEA가아닌 Gradle로 실행한다.
•
Gradle로 선택을 해야 컴파일 시점에 -parameters 옵션을 자동으로 적용해 주기 때문이다.
Repository default 메서드 사용 (findMemberByIdWithThrow())
default메서드 함수명은 find + 도메인 + ByIdWithThrow로 통일
entity는 builder 방식으로 생성하는것을 유지하되 Res dto는 생성자 사용하는걸로
Docker를 이용해서 배포를 할 수 있을 지 의문. 우선 Docker를 안써서 배포해보는걸로
테스트코드
페이징처리, (소셜로그인, 오픈api) 기능
프론트