> Java > java지도 시간 > 본문

Java의 선언적 트랜잭션 방법은 무엇입니까?

PHPz
풀어 주다: 2023-05-16 19:10:59
앞으로
1590명이 탐색했습니다.

1. 선언적 트랜잭션

AOP(Aspect-Oriented) 방식을 사용하여 메소드 이전에 프로그래밍 방식의 트랜잭션 방식을 사용하여 트랜잭션을 열고 메소드 이후에 커밋 또는 롤백합니다. 트랜잭션을 제어하려면 구성 파일 메서드나 주석 메서드(예: @Transactional)를 사용하세요.

메서드에 붙은 주석은 해당 메소드가 자동으로 트랜잭션을 시작한다는 의미이며, 클래스에서는 해당 트랜잭션을 전체 클래스의 메소드가 사용한다는 의미입니다.

2. 메소드

1. TransactionProxyFactoryBean을 기반으로 한 선언적 트랜잭션 관리

applicationContext에서 .xml에

Java의 선언적 트랜잭션 방법은 무엇입니까?

을 구성한 다음 트랜잭션 관리가 필요한 서비스 계층에 프록시 클래스 accountrviceProxy

@Resource(name="accountrviceProxy")
로그인 후 복사
를 삽입합니다. 이 방법에는 단점이 있습니다. 즉, 모든 서비스와 일치해야 합니다. 트랜잭션 관리가 필요한 클래스입니다. 해당 프록시 클래스는 구성하기가 상대적으로 번거롭습니다.

2. AspectJ XML을 기반으로 한 선언적 트랜잭션 관리

진입점을 구성할 때 표현식이 있습니다.

expression="execution(* com.cn.study.spring.service.IAccountService+.*(..))"
로그인 후 복사
실행 괄호 안의 매개변수는 메소드 반환 유형, 패키지 이름, 클래스 이름, 메소드 이름 및 매개변수를 나타냅니다. 메소드

여기서 *는 임의의

IAccountService+를 나타냅니다. IAccountService 인터페이스의 모든 구현 클래스의 메소드를 나타냅니다.

이 메소드는 더 일반적으로 사용되는 메소드입니다.

3. 주석 기반 선언적 트랜잭션 관리

세 번째 방법이 가장 간단합니다. applicationContext.xml에서 주석 트랜잭션을 활성화하는 드라이버를 구성한 다음 트랜잭션 관리가 필요한 클래스 앞에 주석을 추가하기만 하면 됩니다. 으아악

위 내용은 Java의 선언적 트랜잭션 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!