Spring에서는 문자열 처리에 다양한 기능이 있는 StringUtils 라이브러리를 제공해 줍니다. 이번 포스팅에서는 해당 라이브러리를 사용하여 문자열을 처리하는 예제를 알아보도록 하겠습니다.
StringUtils 알아보기
org.springFramework.util은 기본적으로 Spring Framework에 내장되어 있어서 별도의 디펜던시 없이 사용이 가능하다. 하지만 Java에서는 StringUtils을 사용하기 위해서는 org.apache.commons.lang의 다음과 같이 pom.xml에 직접 추가해주어야 한다.
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</articactid>
<version>3.8</version>
</dependency>
StringUtils 라이브러리는 기본적으로 NullPointerException에 대해 안전한 연산을 해주고, 기본적인 String 클래스에 없는 메서드를 제공하기 때문에 문자열에 대한 폭넓은 처리가 가능하기 때문에 반드시 알아야 하는 라이브러리입니다. 이제 자주 사용하는 메서드에 대해 알아보도록 하겠습니다.
StringUtils에서 null을 확인하는 메서드
//isEmpty() - 문자열이 null인지 아닌지 확인
System.out.println(StringUtils.isEmpty(null);
System.out.println(StringUtils.isEmpty("");
System.out.println(StringUtils.isEmpty(" ");
//true
//true
//false ( 공백은 false )
//hasLength() - 문자열이 null인지 아닌지 확인
System.out.println(StringUtils.hasLength(null);
System.out.println(StringUtils.hasLength("");
System.out.println(StringUtils.hasLength(" ");
//true
//true
//true
문자열이 null인지 아닌지를 확인하는 메서드로 isEmpty(), hasLength()가 있습니다. 하지만 두 개의 차이는 공백을 문자로 인지하여 false를 반환하는 isEmpty()와 달리 hasLength()는 공백 또한 true로 반환합니다.
StringUtils에서 공백 처리 메서드
//공백을 포함여부 파악
System.out.println(StringUtils.containsWhiteSpace(" "));
//true
//문자열 앞 공백 제거
System.out.println(StringUtils.trimLeadingWhitespace(" 주마더입니다."));
//주마더입니다.
//문자열 뒤 공백 제거
System.out.println(StringUtils.trimTrailingWhitespace("주마더입니다. "));
//주마더입니다.
System.out.println(StringUtils.trimWhitespace(" 주마더입니다. "));
//주마더입니다.
System.out.println(StringUtils.trimAllWhitespace(" 주마 더 입니다. "));
//주마더입니다.
StringUtils에 다양한 문자열에 공백을 처리하는 메서드입니다.
StringUtils에서 앞, 뒤 문자 제거 메서드
System.out.println(StringUtils.trimLeadingCharacter('주마더입니다'));
//마더입니다
System.out.println(StringUtils.trimTrailingCharacter('주마더입니다'));
//주마더입니
'WEB > Spring' 카테고리의 다른 글
[Spring]Feign Client를 활용한 마이크로서비스 통신 방법 (2) | 2023.07.22 |
---|---|
[Spring]기본적인 어노테이션(Annotation)을 알아보자 (2) | 2023.07.21 |
[MyBatis] 자주 실수하는 CDATA 사용법 자세히 알아보기 (6) | 2023.06.17 |
[Java]stream 살펴보기_(1)등장 배경, 컬렉션과의 차이 (4) | 2023.05.21 |
[Spring]Getter 그리고 Setter 생성하고 사용하기 (2) | 2023.05.16 |