Spring

    Spring Batch 개발 Tip

    개발 시 유의사항 @Scope와 @StepScope 에 대해 잘 알고 쓰자 CGLib 란?CGLIB는 코드 생성 라이브러리로서(Code Generator Library) 런타임에 동적으로 자바 클래스의 프록시를 생성해주는 기능을 제공한다. CGLIB를 사용하면 매우 쉽게 프록시 객체를 생성할 수 있으며, 성능 또한 우수하다. 더불어, 인터페이스가 아닌 클래스에 대해서 동적 프록시를 생성할 수 있기 때문에 다양한 프로젝트에서 널리 사용되고 있다. 예를 들어, Hibernate는 자바빈 객체에 대한 프록시를 생성할 때 CGLIB를 사용하며, Spring은 프록시 기반의 AOP를 구현할 때 CGLIB를 사용하고 있다.

    RestTemplate Setting

    RestTemplate SettingConfiguration 원본 접기123456789101112131415161718192021222324252627282930313233343536http://www.springframework.org/schema/beans" xmlns:xsi="http://www.springframework.org/schema/beans/spring-beans.xsd"> text/html;charset=UTF-8 application/json;charset=UTF-8

    Mybatis Upgrade

    Spring 3.x 에서 4.3.7로 upgradeibatis에서 Mybatis 로 upgradeibatis2에서 mybatis3로 sql map 파일을 mapper xml로 변경해주는 툴. 100% 완벽하진 않지만 단순 작업을 줄이는 용도로..https://github.com/mybatis/ibatis2mybatis 자세한 컨버팅 룰은 https://github.com/mybatis/ibatis2mybatis/wiki 출처: http://lky1001.tistory.com/165 [좋은 프로그램은 마음의 여유에서 나온다.]

    [Spring Framework] RestTemplate 으로 개발 시 에러가 난 경우 응답의 body 확인

    RestTemplate 으로 개발 시 에러가 난 경우 응답의 body를 확인하려면, HttpClientErrorException.getResponseBodyAsString() 을 이용한다. [참고] http://stackoverflow.com/questions/17177107/getting-400-bad-request-when-using-spring-resttemplate-to-post

    [HttpClient] Setting 방법

    HttpClient Setting 을 하는 이유Default HttpClient 를 사용하게 된다면, HttpClient Connection Pool 설정이 기본으로 잡힌다. 그러므로 원하는 성능이 나오지 못한다. 기본 설정은 오른쪽 HttpClientBuilder.class와 같이 기본은 0으로 잡히며 상용을 위한 서버에서는 반드시 튜닝이 필요하다.maxConnTotal = 0maxConnPerRoute = 0 단순한 접속일때는 createMinimal()를 사용하자.이 경우에도 내부 코드를 보면 기본적으로 PoolingHttpClientConnectionManager class 를 사용하며, maxTotal 은 20, defaultMaxPerRoute 는 2로 설정되어 있음을 알고 있어야 한다.Poo..