파일 및 변수 네이밍 컨벤션

종류 설명 예시
package 모두 소문자, 한 단어 example
class 파스칼 케이스 ExampleTest
interface 파스칼 케이스 ExampleTest
method 카멜 케이스 exampleTest
variable 카멜 케이스 exampleTest
constant 모두 대문자, 문자 사이는 언더바(_) 사용 EXAMPLE_TEST
boolean 카멜케이스 exampleTest

패키지 네이밍 컨벤션

종류 설명
controller 컨트롤러 계층
service 서비스 계층
repository 레포지토리 계층
dto DTO 객체
entity Entity
security security 필터 및 security에 사용되는 객체
exception 서버 전역 및 filter Exception Handler
config 서버 config
jwt jwt 생성 및 검증

코딩 컨벤션

  1. 필드 구분(맨 윗줄만 한줄 띄우고, 필드는 전부 붙여쓰기)
  2. 메서드 간의 구분(1줄 띄울기)
  3. 주석 처리 방법: // 한 줄 주석 사용
  4. 복잡한 메서드에 한해서 주석 사용, 의미없는 한 줄 주석 남발 지양
  5. SOUT 사용 지양(디버깅이나 log 활용)
  6. 연산자 좌우 한칸 띄우기
  7. Optional 사용 시 orElseThrow의 람다식은 아래와 같이 다음 줄에서 작성
... findAllById().orElseThrow(
		() -> new IllegalArgumentException("~~~~~~~")
);
  1. 객체 생성 패턴

  2. @Bean 주입

  3. token ⇒ 로그인 후 Body로 반환 → 프론트는 session 저장

{
  "accessToken": "-----------",
  "refreshToken": "----------"
}