스프링이 @transactional 주석이있는 내 메서드를 어떻게 변경하는지 알고 싶습니까? 예를 들어 @transactional을 사용하지 않고 트랜잭션 방식을 실행하는 방법에 대해서는 here을 읽습니다. 봄이 정확히 무엇입니까?@transactional은 어떻게 작동합니까?
0
A
답변
1
봄은 효과적으로 개체에 대한 프록시를 만듭니다. 따라서 "MyApplication"클래스가 "DBService"를 주입하고 DBService에 @Transactional이 있으면 Spring은 DBService 프록시를 만듭니다. 프록시가 MyApplication에 삽입되고 DBService의 메소드 호출은 대신 해당 Proxy를 호출합니다. 그런 다음 Proxy는 실제 DBService 메소드를 호출하기 전에 트랜잭션을 시작하거나 필요한 모든 작업을 수행 할 수 있습니다.
MyApplication -> DBService Proxy (intercepts calls) -> DBService
프록시 구성 방법에 대한 자세한 내용은 스프링 버전 및 코드 설정 방법에 따라 달라질 수 있습니다. 비록 인터페이스를 사용하지 않는다면, 스프링은 CGLIB 라 불리는 라이브러리를 사용하여 실제 클래스를 확장 할 수 있습니다. Pre 4, 이것은 기본 생성자를 필요로합니다. 최신 스프링 4 기본 생성자는 필요 없으며 약간 다른 메커니즘을 통해 수행합니다.
관련 문제
- 1. HibernateTemplate과 Spring @Transactional은 어떻게 함께 작동합니까?
- 2. @Transactional은 무엇을합니까?
- 3. @Transactional은 프록시 만 작동합니다.
- 4. 스프링에서 @transactional은 테이블을 업데이트하지 않습니다.
- 5. linkWithCredential은 어떻게 작동합니까? 규칙은 어떻게 작동합니까?
- 6. 어떻게 작동합니까?
- 7. 어떻게 작동합니까?
- 8. : 어떻게 작동합니까?
- 9. - 어떻게 작동합니까?
- 10. 어떻게 작동합니까?
- 11. 어떻게 작동합니까?
- 12. @Transactional은 Spring 3에서 트랜잭션을 자동으로 롤백합니까?
- 13. Spring @Transactional은 어떤 hibernate 캐시를 사용합니까?
- 14. 크롬 플러그인은 어떻게 작동합니까? Evernote 분명히 작동합니까?
- 15. 메모리 조각 모음 소프트웨어. 어떻게 작동합니까? 작동합니까?
- 16. 서버 브라우저는 어떻게 작동합니까? 게임에서 작동합니까?
- 17. '새로운'메시지 개념은 어떻게 작동합니까?
- 18. smackaho.st는 어떻게 작동합니까?
- 19. Zalgo 텍스트는 어떻게 작동합니까?
- 20. stringstream은 어떻게 내부적으로 작동합니까?
- 21. 작은 URL은 어떻게 작동합니까?
- 22. doRedis는 어떻게 작동합니까?
- 23. 어떻게 작동합니까 anchorPoint - UIImageView
- 24. 이 코드는 어떻게 작동합니까?
- 25. TouchImageView는 어떻게 작동합니까?
- 26. Response.IsClientConnected는 어떻게 작동합니까?
- 27. DOM에서 파일로드는 어떻게 작동합니까?
- 28. JavaScript에서 국제화는 어떻게 작동합니까?
- 29. FBConnect는 실제로 어떻게 작동합니까?
- 30. Jquery는 어떻게 작동합니까?
기본적으로 스프링은 동적 프록시를 만듭니다. 동적 프록시는 클래스 대신 사용되며 메소드 주위에 트랜잭션 동작을 추가합니다. 이 문서는 http://docs.spring.io/spring/docs/current/spring-framework-reference/html/transaction.html#transaction-strategies, http://docs.spring.io/의 모든 세부 정보를 제공합니다. spring/docs/current/spring-framework-reference/html/transaction.html # tx-decl-described – geoand
@geoand 호기심에서 벗어나 응답을 게시하는 대신 댓글에 질문에 답하는 이유는 무엇입니까? –
@ 리카르도 (Ricardo) 나는 진정한 대답을 보증하기 위해 더 많은 내용을 써야 할 것이다. 아프다. – geoand