DB SQL(insert, replace..)의 values에 여러 데이터를 한 번에 저장해야 할 일이 있을 때,
List 객체를 순회하면서 데이터를 포맷을 tuple형식처럼 만들어야 하는 경우가 있는데. 맨 끝 요소에 대해서는 , 를 제외시켜야 한다.
(a, b, c, d), (e, f, g, h),
->
(a, b, c, d), (e, f, g, h)
이럴 때 쓸만한 utility로 guava에 Splitter와 Jointer가 있다. 이를 활용하면 맨 끝의 ,는 다 사라진다.
import com.google.common.base.Joiner;
import com.google.common.base.Splitter;
import org.junit.Test;
public class RemovalCommanFromTailOfStringTest {
static Splitter splitter = Splitter.on(',').omitEmptyStrings().trimResults();
static Joiner joiner = Joiner.on(',').skipNulls();
public static String cleanUpCommas(String string) {
return joiner.join(splitter.split(string));
}
@Test
public void test() {
System.out.println(RemovalCommanFromTailOfStringTest.cleanUpCommas("3,4,5,,,,,,,,,,,,"));
System.out.println(RemovalCommanFromTailOfStringTest.cleanUpCommas(",,,,,,,,,,,,,,,,3,4,5,6,"));
System.out.println(RemovalCommanFromTailOfStringTest.cleanUpCommas("3,4,5 ,"));
System.out.println(RemovalCommanFromTailOfStringTest.cleanUpCommas("(a),(b),(c),(d),"));
}
}
출력
3,4,5
3,4,5,6
3,4,5
(a),(b),(c),(d)
'general java' 카테고리의 다른 글
Guava의 Joiner 예시 (0) | 2016.03.13 |
---|---|
Guava의 Joiner 예시 (0) | 2016.03.13 |
zookeeper Max 노드(znode) 크기 (0) | 2016.01.20 |
[springboot] mybatis (0) | 2016.01.12 |
[mybatis] spring4에서 사용할 수 있는 ibatis 지원 (0) | 2016.01.12 |