• 스프링 빈 동적 생성

    프로젝트에 커스텀 설정정보를 이용해서 동적으로 스프링 빈 등록을 하려고 한다. 이 기능이 필요했던 이유는 mybatis 때문인데 mybatis를 사용하려면 SqlSessionTemplate, SqlSessionFactory, Datasource, TransactionManager 등 접속 정보 하나를 추가할 때 마다 하려면 다른 Class들도 빈으로 같이 등록해줘야 했기 때문이다. DataSource 3개만 돼도 비슷비슷한 이름으로 많은 양의 코드가 증가하게 되는데 이는 필시 개발자가...


  • Spring Transaction - Multiple DataSources Transaction

    다중 스프링 트랜잭션을 Programmatic하게 제어하는 방법을 공유하고자 한다. 수작업으로 트랜잭션을 제어하는데 transaction synchronization is not active 에러가 뜨면 이 글을 읽어보기 바란다. 트랜잭션 경계 설정 방법 스프링에서 트랜잭션을 다루는 방법은 크게 3가지 정도로 나눌 수 있다. @Transactional 과 같은 Annotation 사용 AspectJ, Spring AOP 등 수평적 선언 방식 프로그램으로 직접...


  • 듀얼모니터 확장, PC화면만 등 전환 단축키 만들기

    나는 데스크탑 Windows PC 한 대와 맥북 한 대를 사용해서 작업을 한다. 모니터 하나로 일하는 것은 여러모로 불편해서 모니터 한 대를 추가 구입해 듀얼모니터로 사용하고 있다. 요로케 그런데 데스크탑을 듀얼로 쓰다가 맥북으로 소스를 전환하면 데스크탑은 여전히 듀얼 디스플레이 모드인 상태라 확장 모니터에 있던 화면들을 볼 수가 없다. 그럴때 마다 매번...


  • SpringBoot Gradle Multi Project 구성하고 nexus에 배포하기

    실행되는 프로젝트와 API 들을 묶어 놓은 프로젝트를 구분해야 하는 경우가 있다. 이때 이들을 별도의 프로젝트로 분리해놓으면 의존관계 때문에 꽤나 귀찮은 일들이 생길 수 있어서 하나의 큰 프로젝트안에 여러 소규모 프로젝트로 나누어 관리하기도 한다. 이렇게 나누어 관리하기 위한 설정을 기록해 놓고자 한다. 환경 스프링부트 2.1.0 Gradle 4.10.2 jdk 1.8 설정방법 1....


  • gradle upgrade 하기

    SpringBoot를 2.1.0 으로 올리려니까 gradle plugin 버전이 4.4 이어야 한다고 오류가 떴다. gradle을 upgrade 하자. 먼저 시스템에 설치되어 있는 gradle을 upgrade 할 것인데 Homebrew 로 설치했어서 간단하게 upgrade 가 가능했다. Homebrew는 참 좋은 것 같다. Mac OS, Homebrew brew upgrade gradle 그러면 쭉쭉 알아서 업그레이드가 되고 (시간이 좀 걸렸다) 현재...