2016-08-03 1 views
0

데이터베이스로 작업을 단순화하기 위해 라이브러리 (jar)를 만들고 JdbcTemplate을 사용하고 싶습니다. 하지만이 라이브러리는 다른 Spring 애플리케이션에서 사용될 것이다. 그리고 기본적으로 @Transactional 애노테이션은 라이브러리의 메소드에 영향을 미칩니다 (라이브러리의 JdbcTemplate은 외부 트랜잭션을 인식합니다). 그래서 외부 트랜잭션을 무시할 수 있도록 JdbcTemplate을 작성해야합니다. 그게 가능하니?JdbcTemplate에서 @Transactional을 무시하는 방법

+0

'@Transactional (REQUIRES_NEW)'? 일반적으로 말하자면 외부 트랜잭션 컨텍스트에 참여해야합니다. – chrylis

답변

0

그래서 응용 프로그램 트랜잭션 전파 수준은 라이브러리 트랜잭션 관리에 영향을주지 않아야합니다. 제 이해가 맞습니까?

예, Propagation.NOT_SUPPORTED에 모습을 가질 수 있다면, ref

나는 당신이 모든 인터페이스 방법은 @Transactional(propagation = Propagation.NOT_SUPPORTED) 주석 어떤 경우 응용 프로그램에서 사용하는 공용 메서드를 노출합니다 라이브러리의 인터페이스를 디자인하려고 생각? 그것은 당신의 문제를 해결하지 않을 것입니다.

관련 문제