[Spring] 스프링 실무 꿀팁, 빈문자열 또는 null 체크 할땐 StringUtils.hasText()

뉴브이·2023년 5월 17일
1
post-custom-banner

개발환경이 스프링인 실무에서 유용하게 자주사용하는 메서드가 하나있다.
바로 문자열에 대한 null체크와 동시에 빈문자열인지 확인 할수있는

StringUtils.hasText();

해당 메서드는 다음과 같은 패키지에 위치해 있으며

import org.springframework.util.StringUtils;

스프링 코어에 속해있다.

implementation group: 'org.springframework', name: 'spring-core', version: '5.2.24.RELEASE'

사용 코드는 다음과 같다.

String str1 = null; 
String str2 = "";
String str3 = "  ";
String str4 = "  h o";
String str5 = "holle";

System.err.println(StringUtils.hasText(str1)); // false
System.err.println(StringUtils.hasText(str2)); // false 
System.err.println(StringUtils.hasText(str3)); // false
System.err.println(StringUtils.hasText(str4)); // true
System.err.println(StringUtils.hasText(str5)); // true

보면알겠지만 null 체크 뿐만 아니라 공백을 무시하여 빈문자열인지를 검사한다.
내부를 들여다 보면 다음과 같이 구현하고 있다.

	public static boolean hasText(@Nullable String str) {
		return (str != null && !str.isEmpty() && containsText(str));
	}

	private static boolean containsText(CharSequence str) {
		int strLen = str.length();
		for (int i = 0; i < strLen; i++) {
			if (!Character.isWhitespace(str.charAt(i))) {
				return true;
			}
		}
		return false;
	}
profile
new vision and new value
post-custom-banner

0개의 댓글