🧩 정의

StringUtils란?

StringUtilsorg.springframework.util 패키지에서 제공하는 문자열 처리 유틸리티 클래스이다. Java 기본 문자열 메서드보다 조금 더 실무적인 null 처리와 공백 검사를 쉽게 해준다.

  • 문자열이 비어 있는지 확인할 때 사용한다.
  • 공백만 있는 문자열을 걸러낼 때 유용하다.
  • Spring 코드 전반에서 검증용 헬퍼로 자주 쓰인다.

⚙️ 주요 메서드

Method명 기능
isEmpty() 문자열이 null이거나 비어있는지 확인한다
hasLength() 문자열이 null이 아니고 길이가 1 이상인지 확인한다
hasText() 문자열이 null이 아니고, 공백만 있는 문자열이 아닌지 확인한다
capitalize() 첫 글자를 대문자로 바꾼다
uncapitalize() 첫 글자를 소문자로 바꾼다

사용법

1️⃣ Gradle 의존성 추가

implementation 'org.springframework:spring-core:6.1.6'

2️⃣ hasText() 활용 예제

hasText()는 문자열이 null이 아니고, 공백 문자만 있는 경우가 아닐 때 true를 반환한다.

public static BooleanExpression stringUpperLikeIfExist(StringPath entityString, String emptableString) {  
    return StringUtils.hasText(emptableString) ? entityString.upper().like(emptableString) : null;  
}

위 예제에서는 emptableString 값이 유효할 때만 BooleanExpression을 반환한다.

3️⃣ 실제 활용 예시

if (StringUtils.hasText(keyword)) {
    query.where(post.title.containsIgnoreCase(keyword));
}

⚠️ 주의사항

  • StringUtilsjava.lang.String의 인스턴스 메서드가 아니라 Spring 유틸리티다.
  • isEmpty()hasLength()는 비슷해 보여도 공백 처리 기준이 다르다.
  • 공백만 있는 문자열을 걸러내려면 보통 hasText()를 사용하는 편이 더 안전하다.

장점과 단점

✅ 장점

  • NPE(Null Pointer Exception) 방지를 위한 유용한 메서드 제공
  • Spring에서 문자열 검증을 간편하게 수행 가능
  • 조건문을 간결하게 작성할 수 있음

❌ 단점

  • Java 기본 제공 메서드(isEmpty(), isBlank())와 역할이 겹칠 수 있음
  • Spring Core 의존성이 필요함

📌 정리

  • StringUtils는 Spring에서 문자열 null/공백 검사를 간단하게 처리할 때 유용하다.
  • 실무에서는 hasText()가 가장 자주 쓰인다.
  • 문자열 조건 검사를 깔끔하게 만들고 싶을 때 자주 꺼내 쓰는 헬퍼다.

연결문서

태그:

카테고리:

업데이트:

댓글남기기