제가 진행중인 프로젝트는 JDBC 데이터 액세스를 모든 보일러 플레이트 영광으로 사용하며 트랜잭션을 사용하지 않습니다. 트랜잭션을 사용하고 데이터 액세스 방법이 쓰여지는 방식을 단순화하는 것이 중요하다고 생각합니다. 특히 현재 일부 변경이 이루어져야합니다. 이 프로젝트는 오랫동안 사용되어 왔으며 ORM 프레임 워크에 적합하지 않습니다. 그것은 또한 많은 싱글 톤 (Uugh)을 사용하고 의존성 주입을 사용할 수있게하기 위해 엉킴을 제거하면 상당한 양의 작업이 될 것이고 나는 지금 우리가 그렇게해야한다는 것을 누군가에게 납득시킬 수 있다고 생각하지 않는다.IoC 컨테이너 외부에서 간단한 Spring JDBC 트랜잭션을 수행하는 방법은 무엇입니까?
나는 Spring JDBC의 인터페이스가 특히 SimpleJdbcTemplate
인 인터페이스를 좋아한다. 내 질문은 모든 데이터 액세스 방법에서 프로그래밍 방식으로 설정하거나 Spring IoC 컨테이너 또는 AOP를 사용하지 않고도 간단한 (서블릿 요청 당) 트랜잭션을 활성화하는 방법에 관한 것입니다. 나는 자신의 아키텍처로 끝내고 SimpleJdbcTemplate
과 비슷한 인터페이스로 끝내었고 요청에 대한 호출이 요청의 컨텍스트에서 이루어질 때 단일 요청 - 로컬 연결과 트랜잭션을 사용할 수 있습니다 (ServletRequestListener
및 ThreadLocal
통해).). 그것은 잘 작동하는 것,하지만 나는 봄 JDBC와 같은 좋은 외부 라이브러리를 사용하는 것이 바람직하다고 생각합니다.
누구나이 경험이 있습니까?
JdbcTemplate에 대한 모든 호출에 가능한 경우 요청 로컬 트랜잭션을 사용하는 대신 프로그래밍 방식으로 TransactionTemplate을 사용하여 호출을 래핑해야하므로 생각했던 방식대로 작동하지 않습니다. 그것은 잘 작동합니다. – ColinD