Spring StringUtils
🧩 정의
StringUtils란?
StringUtils는org.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));
}
⚠️ 주의사항
StringUtils는java.lang.String의 인스턴스 메서드가 아니라 Spring 유틸리티다.isEmpty()와hasLength()는 비슷해 보여도 공백 처리 기준이 다르다.- 공백만 있는 문자열을 걸러내려면 보통
hasText()를 사용하는 편이 더 안전하다.
장점과 단점
✅ 장점
- NPE(Null Pointer Exception) 방지를 위한 유용한 메서드 제공
- Spring에서 문자열 검증을 간편하게 수행 가능
- 조건문을 간결하게 작성할 수 있음
❌ 단점
- Java 기본 제공 메서드(
isEmpty(),isBlank())와 역할이 겹칠 수 있음 - Spring Core 의존성이 필요함
📌 정리
StringUtils는 Spring에서 문자열 null/공백 검사를 간단하게 처리할 때 유용하다.- 실무에서는
hasText()가 가장 자주 쓰인다. - 문자열 조건 검사를 깔끔하게 만들고 싶을 때 자주 꺼내 쓰는 헬퍼다.
댓글남기기