Ответ 1
Теперь вы можете использовать @EnableTransactionManagement
.
См. это сообщение для более подробной информации: http://blog.springsource.com/2011/06/10/spring-3-1-m2-configuration-enhancements/
Итак, в последней версии 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
. Если у кого-нибудь есть идеи о том, как это сделать или если это просто невозможно, сообщите мне.
Спасибо!
Теперь вы можете использовать @EnableTransactionManagement
.
См. это сообщение для более подробной информации: http://blog.springsource.com/2011/06/10/spring-3-1-m2-configuration-enhancements/
Кажется, что это невозможно по этот пост форума:
может быть более первоклассный механизм для включения управляемый аннотацией TX в
@Configuration
классов в Spring 3.1, но в Тем временем рекомендуемый подход использовать@ImportResource
для включения фрагмент XML, который объявляет<tx:annotation-driven/>
Подождите: но у вас, похоже, есть XML-контекст. Почему бы не добавить <tx:annotation-driven/>
к нему и использовать @Transactional
?
Посмотрите http://blog.springsource.com/2011/02/17/spring-3-1-m1-featurespec. Spring 3.1 Классы FeatureSpecification, такие как TxAnnotationDriven, предназначены для решения именно проблемы, описанной выше.