
tomcat에서 jndi datasource 설정을 하는 방법은 전에 알아보았다. Tomcat JNDI Datasource 설정하여 Spring 연동하기 보통은 로컬 개발환경을 제외하고는 was에 datasource 설정을 하는 JNDI 방식을 많이 사용을 한다. JNDI는 datasource 설정을 was에서 하고 효율적인 connection pool 관리 등 여러가지 장점을 가지고 있어서 주 oingdaddy.tistory.com 위 글에서 간략하게 암호화 하는 과정에 대해서 알아보았는데 오늘은 이것을 구체적으로 알아보도록 하겠다. 암호화하는 역할을 하는 프로젝트를 jar로 추출한다고 했었는데 이 암호화하는 역할을 하는 DataSourceFactory를 가지고 있는 프로젝트는 다음을 참고했다. 세상엔..
보통은 로컬 개발환경을 제외하고는 was에 datasource 설정을 하는 JNDI 방식을 많이 사용을 한다. JNDI는 datasource 설정을 was에서 하고 효율적인 connection pool 관리 등 여러가지 장점을 가지고 있어서 주로 이 방식이 많이 사용이 된다. 나중에 JDBC 방식과 JNDI 방식이 어떻게 다르고 장단점은 무엇인지 자세히 알아보고 이번엔 실제 설정하는 방법과 어떻게 spring과 연동하여 사용하는지에 대해 알아보겠다. server.xml or context.xml (tomcat) ... 여러 was 마다 각각 jndi 설정하는 방법이 있지만 이번에는 tomcat을 예로 알아보도록 하겠다. tomcat의 설정 파일인 server.xml 이나 context.xml 파일에서 j..

springloaded는 hot deploy를 가능하게 해주는 기술 중 하나이다. hot deploy는 뭐냐? 쉽게 설명을 하자면 소스의 변경을 was의 재기동 없이 반영을 해주는 것이라고 생각 하면 된다. was의 재기동은 상황에 따라서 매우 오래 걸릴수도 있기 때문에 이렇게 즉각 변경사항이 반영되는것은 프로젝트 생산성 향상에 아주 큰 도움이 된다. tomcat 환경에서 springloaded를 적용하는 방법은 아주 간단하다. 일단은 springloaded.jar 파일을 받는다. jar 파일 하나만 받으면 된다. Maven Repository: org.springframework » springloaded » 1.2.8.RELEASE org.springframework springloaded 1.2.8..
전에 spring 프로젝트를 springboot 프로젝트로 migration 하는 과정을 기술한 적이 있다. 마찬가지로 현재 Spring Batch로 구성된 batch 프로젝트를 springboot batch로 전환을 하려고 한다. 두 프로젝트 모두 maven 기반의 프로젝트이고 전반적인 구성에 대한 소개보다는 migration point 에 대해서만 집중적으로 기술하도록 하겠다. 프로젝트 feature 전의 web 프로젝트와 동일하게 parent 프로젝트가 존재하고 module로 web, batch, common 등의 프로젝트가 child로 존재를 하는 상황이다. 또한 jdk 11, spring version은 4.3.12, spring batch version은 4.0.1, springboot의 ve..

svn을 통한 배포 관리 (trunk, branches, tags 활용) 지난번에는 svn에 trunk, branches, tags 생성하는 방법에 대해서 알아보았다. svn trunk, branches, tags 생성하기 (with svn:E160013) 일단 TESTSVN 이라는 svn repository 를 생성을 하였다. (svn 은 설치가 되.. oingdaddy.tistory.com 위와 같은 작업을 통해 최종 배포할 소스에 대해 tag에 넣는 방법에 대해 알아보았다. 이번에는 tag에 보관된것을 가지고 jenkins에서는 어떻게 연결하여 가져와 빌드를 하는지에 대해 알아보겠다. jenkins에서 build를 할 job을 생성을 하고 "이 빌드는 매개변수가 있습니다." 클릭 List Subve..

지난번에는 svn에 trunk, branches, tags 생성하는 방법에 대해서 알아보았다. svn trunk, branches, tags 생성하기 (with svn:E160013) 일단 TESTSVN 이라는 svn repository 를 생성을 하였다. (svn 은 설치가 되었다는 전제) svnadmin create --fs-type fsfs /app/svn/TESTSVN 생성을 마치면 이클립스에서 바로 생성된 svn 주소를 통해 만든 Reposit.. oingdaddy.tistory.com 그럼 이녀석들은 무엇을 위해 이렇게 따로 나뉘어 있는가? 다 각자의 역할이 있다. trunk : 소스의 주 개발 작업을 진행하는 폴더 branches : 소스의 현재 버전을 유지보수하고, 현재 버전을 기반으로 차..

git을 더욱 효과적으로 사용할 수 있도록 도와주는 여러 도구들이 있지만 오늘은 이클립스에서 git plugin을 통해서 git을 사용하는 방법에 대해 알아보겠다. 요즘 나오는 이클립스나 STS는 모두 git이 기본적으로 설치가 되어 있어서 별도의 설치 과정은 필요 없다. git을 이클립스에서 사용하기 위해서는 이클립스의 windows > perspective > open perspective > git 으로 Git Repositories 를 열어주고 clone git repository 를 해준다. (생성한 git repo의 주소와 계정정보를 알고 있어야 함) 다음으로는 Clone URI를 클릭한다. 이런 식으로 git의 정보를 입력해주고 적당한 디렉토리에 받는다. 그리고 maven 프로젝트라면 생성한..
spring에서 transaction propagation 은 전파옵션을 뜻한다. 전파옵션이라는 것은 트랜잭션을 시작하거나 기존 트랜잭션에 참여하는 방법에 대해 결정하는 속성값 정도로 생각하면 된다. 즉 큰 트랜잭션의 흐름을 컨트롤 하는 옵션이라는 것이다. Transaction Propagation의 종류는 다음과 같다. · REQUIRED (default) : 이미 시작된 트랜잭션이 있으면 참여하고 없으면 새로 시작한다. · REQUIRES_NEW : 항상 새로운 트랜잭션을 시작한다. 이미 진행 중인 트랜잭션이 있으면 트랜잭션을 잠시 보류시킨다. · SUPPORTS : 이미 시작된 트랜잭션이 있으면 참여하고, 없으면 트랜잭션없이 진행한다. · NESTED : 중첩된 트랜잭션은 먼저 시작된 부모 트랜잭션..