>  기사  >  Java  >  JAVA는 왜 트랜잭션을 사용하나요?

JAVA는 왜 트랜잭션을 사용하나요?

anonymity
anonymity원래의
2019-05-05 12:23:484039검색

JAVA는 왜 트랜잭션을 사용하나요?

거래란 무엇인가요?

거래란 일반적으로 해야 할 일이나 해야 할 일을 말합니다. 컴퓨터 용어로 데이터베이스의 다양한 데이터 항목에 액세스하고 업데이트할 수 있는 프로그램 실행 단위(단위)를 나타냅니다. 트랜잭션은 일반적으로 고급 데이터베이스 조작 언어나 프로그래밍 언어(예: SQL, C++, Java)로 작성된 사용자 프로그램의 실행으로 인해 발생하며 트랜잭션 시작 형식의 명령문(또는 함수 호출)에 의해 정의됩니다. 그리고 거래를 종료합니다. 트랜잭션은 트랜잭션 시작과 트랜잭션 종료 사이에 수행되는 모든 작업으로 구성됩니다.

왜 업무가 필요한가요?

데이터 보안 운영을 해결하기 위해 트랜잭션이 제안됩니다. 트랜잭션 제어는 실제로 데이터의 안전한 접근을 제어하는 ​​것입니다.

간단한 예를 들어 보겠습니다. 은행 이체 사업에서 A 계좌는 자신의 계좌에서 B 계좌로 1,000위안을 이체하려고 합니다. 먼저 A 계좌의 잔액에서 1,000위안을 뺀 다음 B 계좌는 1,000위안을 늘려야 합니다. 중개망에 문제가 있어 A계좌에서 1,000위안 공제가 종료되고, 망장애로 B가 운영에 실패하는 경우 전체 사업이 실패하게 되며, 해당 사업을 취소하도록 통제해야 한다. A 계좌의 업무를 양도합니다. 이를 통해 비즈니스의 정확성을 보장할 수 있습니다. 이 작업을 완료하려면 거래가 필요합니다. 계정 A 자금의 감소와 계정 B 자금의 증가를 모두 성공적으로 실행하거나 모두 취소합니다. 따라서 데이터의 보안을 보장합니다.

트랜잭션의 4가지 특성(ACID):

1) 원자성: 트랜잭션은 데이터베이스 작업의 논리적 단위이며, 데이터 수정을 위해 모든 작업이 실행되거나 아무것도 실행되지 않습니다.

2) 일관성: 거래가 완료되면 모든 데이터는 일관성을 유지해야 합니다. 관련 데이터베이스에서는 모든 데이터의 무결성을 유지하기 위해 트랜잭션 수정에 모든 규칙을 적용해야 합니다. (예: 이체, 두 계정의 잔액이 추가되어도 값은 변경되지 않습니다.)

3) 격리: 트랜잭션 실행은 다른 트랜잭션의 영향을 받을 수 없습니다.

4) 내구성: 한번 트랜잭션이 제출되면 해당 트랜잭션의 작업은 DB에 영구적으로 저장됩니다. 데이터베이스 시스템에 장애가 발생하더라도 트랜잭션 커밋 작업은 손실되지 않습니다.

Java에는 몇 가지 유형의 트랜잭션이 있나요?

Java 트랜잭션에는 JDBC 트랜잭션, JTA(Java Transaction API) 트랜잭션, 컨테이너 트랜잭션의 세 가지 유형이 있습니다.

위 내용은 JAVA는 왜 트랜잭션을 사용하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.