목록transaction (2)
Arthur's Blog
JUnit 테스트는 당연히 스레드를 재사용해야 합니다. 테스트 케이스 하나하나를 실행할 때마다 스레드를 재할당하면 테스트가 하루종일 걸릴 수 있기 때문입니다. 최근 GitHub에서 진행한 프로젝트 leeseojune53/LearnBoot는 Spring Boot의 주요 기능을 학습하기 위해 보안 및 데이터베이스 접근 기능을 직접 구현해보는 실습용 프레임워크입니다.이 프레임워크를 통해 DB Access의 테스트 케이스(TC)를 작성하고 로직을 구현하여 실행하는 중, 아래와 같은 오류가 발생했습니다: java.lang.RuntimeException: java.sql.SQLNonTransientConnectionException: No operations allowed after connection close..
트랜잭션이란 트랜잭션이란 질의(query)를 하나의 묶음 처리해서 만약 중간에 실행이 중단됐을 경우, 처음부터 다시 실행하는 Rollback을 수행하고, 오류없이 실행을 마치면 commit을 하는 실행 단위를 의미한다. 즉, 한 번 질의가 실행되면 질의가 모두 수행되거나 모두 수행되지 않는 작업수행의 논리적 단위이다. 트랜잭션을 작업수행의 논리적 단위라고 이야기를 했는데, 이로인해 DBMS의 성능은 초당 트랜잭션의 실행 수(TPS : Transaction per second)로 측정한다. 사용 이유 트랜잭션은 DB 서버에 여러 개의 클라이언트가 동시에 액세스 하거나 응용프로그램이 갱신을 처리하는 과정에서 중단 될 수 있는 경우 등 데이터 부정합을 방지하고자 할 때 사용합니다. 부정합이 발생하지 않으려면 ..