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
Posted by '김용환'
,