본문 바로가기
개발자 기초 & 실무

IntelliJ 생산성: 라이브 템플릿 10개

by yamoojin83 2025. 10. 1.

IntelliJ 생산성: 라이브 템플릿 10개

반복해서 타이핑하는 코드가 있다면 Live Template로 치환하세요.

Settings → Editor → Live Templates에서 등록하고 Context를 Java

또는 Java Statement로 지정하면, 축약어만 입력해 몇 초 만에 표준 형태를 완성할 수 있습니다.

아래 10개는 현업에서 바로 쓰는 템플릿과 변수 예시입니다.

사용 팁

  • $END$: 커서 최종 위치
  • $SELECTION$: 선택 영역을 템플릿에 삽입
  • 함수 매크로: methodName(), className(), date()

1) gwt – Given/When/Then 테스트 스켈레톤


@Test @DisplayName("$DESC$")
void $NAME$() {
  // Given
  $END$
  // When

  // Then

}

2) log – 로거 필드


private static final org.slf4j.Logger log =
  org.slf4j.LoggerFactory.getLogger($CLASS_NAME$.class);

3) opt – Optional 처리


java.util.Optional.ofNullable($EXPR$)
  .map($MAPPER$)
  .orElse($DEFAULT$);

4) tryr – try-with-resources


try ($RES$) {
  $END$
}

5) svc – Spring @Service 클래스


@org.springframework.stereotype.Service
public class $NAME$ {
  private final $DEP$ dep;
  public $NAME$($DEP$ dep) { this.dep = dep; }
}

6) rest – Spring @GetMapping 메서드


@org.springframework.web.bind.annotation.GetMapping("$PATH$")
public $RET$ $NAME$() {
  $END$
}

7) cf – CompletableFuture 병렬 호출


java.util.concurrent.CompletableFuture<$T$> f =
  java.util.concurrent.CompletableFuture.supplyAsync(() -> $SUP$, $EXEC$);
$T$ v = f.orTimeout(500, java.util.concurrent.TimeUnit.MILLISECONDS).join();

8) stre – Stream 필터→맵→수집


$LIST$.stream()
  .filter($PRED$)
  .map($MAP$)
  .collect(java.util.stream.Collectors.toList());

9) guard – 파라미터 검증


java.util.Objects.requireNonNull($ARG$, "$ARG$");
if ($COND$) throw new IllegalArgumentException("$MSG$");

10) bldr – Lombok Builder DTO


@lombok.Builder @lombok.Getter
public class $NAME$ {
  @lombok.NonNull private final $T1$ $F1$;
  private final $T2$ $F2$;
}

내보내기/공유

팀과 공유하려면 File → Manage IDE Settings → Export Settings로 내보내고,

새 환경에서는 Import하면 됩니다.

저장소에 .idea를 포함시킬 필요 없이, 템플릿만 공유 파일로 배포하는 방식을 추천합니다.

마무리

Live Template은 표준화와 속도를 동시에 줍니다.

본문에 제시한 10개를 출발점으로 삼아 팀 컨벤션(로깅, 예외, Javadoc, 계층별 스테레오타입)에 맞춰

조금씩 변형해 보세요. “손이 기억하는 코딩 루틴”이 쌓이면,

테스트·리팩터링 속도가 확연히 달라집니다.

 

 

👉 1편: Maven→Gradle 마이그레이션 함정 7가지

👉 2편: JUnit5 + Mockito: Given-When-Then 패턴

👉 3편: Lombok 안전 사용 규칙(@Builder/@Value/@With)

👉 4편: IntelliJ 생산성: 라이브 템플릿 10개