복붙노트

[SPRING] @Configuration 클래스의 주석으로 구동되는 트랜잭션 설정하기

SPRING

@Configuration 클래스의 주석으로 구동되는 트랜잭션 설정하기

따라서 최신 버전의 Spring에서는 @Configuration 주석을 사용하여 Spring의 구성을 설정할 수 있습니다. 이제 JavaConfig에서 @AnnotationDrivenTx (@AnnotationDrivenTx Reference Link) 주석을 사용하여 Config 클래스의 트랜잭션을 설정할 수 있습니다. 하지만 JavaConfig가 해제 된 이후로 나는 누군가가 JavaConfig없이 application-context.xml에 아무 것도 추가하지 않고 비슷한 것을 설정하는 방법을 알고 있는지 궁금해하고있었습니다. 다음은 기본적으로 Config 클래스에 대한 것입니다.

@Configuration
@ImportResource("config/application-context.xml")
public class Config {

     public @Bean DataSource dataSource() {
           //get and return datasource
     }

     public @Bean Service1 getService1() {
          //return service1Impl
     }
}

Service1을 트랜잭션으로 만들고 싶습니다. 만약 누군가가 이것을하는 방법에 대한 아이디어가 있거나 이것이 가능하지 않다면 저에게 알려주십시오.

감사!

해결법

  1. ==============================

    1.이제 @EnableTransactionManagement를 사용할 수 있습니다.

    이제 @EnableTransactionManagement를 사용할 수 있습니다.

    자세한 내용은이 게시물을 참조하십시오. http://blog.springsource.com/2011/06/10/spring-3-1-m2-configuration-enhancements/

  2. ==============================

    2.이 포럼 게시물에 따르면 불가능한 것 같습니다.

    이 포럼 게시물에 따르면 불가능한 것 같습니다.

    잠깐 : 어쨌든 XML 컨텍스트가있는 것 같습니다. 을 추가하고 @Transactional을 사용해야하는 이유는 무엇입니까?

  3. ==============================

    3.http://blog.springsource.com/2011/02/17/spring-3-1-m1-featurespec을 확인하십시오. TxAnnotationDriven과 같은 Spring 3.1의 FeatureSpecification 클래스는 위에서 설명한 문제를 정확히 해결하도록 설계되었습니다.

    http://blog.springsource.com/2011/02/17/spring-3-1-m1-featurespec을 확인하십시오. TxAnnotationDriven과 같은 Spring 3.1의 FeatureSpecification 클래스는 위에서 설명한 문제를 정확히 해결하도록 설계되었습니다.

  4. from https://stackoverflow.com/questions/3722310/setting-up-annotation-driven-transactions-in-spring-in-configuration-class by cc-by-sa and MIT license