트랜잭션이란 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위이며, 이에 대한 특징에는 원자성, 일관성, 독립성, 지속성이 있다. 원자성 all or nothing 원자성(atomicity)은 트랜잭션과 관련된 일이 모두 수행되었거나 되지 않았거나를 보장하는 특징이다. 예를 들어 트랜잭션을 커밋했는데, 문제가 발생하여 롤백하는 경우 기 이후에 모두 수행되지 않음을 보장하는 것을 의미한다. 커밋과 롤백 커밋(commit)은 여러 쿼리가 성공적으로 처리되었다고 확정하는 명령어이다. 트랜잭션 단위로 수행되면 변경된 내용이 모두 영구적으로 저장되는 것을 의미한다. 즉 "커밋이 수행 되었다"를 "하나의 트랜잭션이 성공적으로 수행되었다" 로 볼 수 있다. 롤백(rollback)은 트랜잭션으로 처리한 ..
Java의 Compile 과정 .java 파일을 생성 Build Java Compiler의 javac 명령어를 통해 바이트코드(.class)를 생성 class loader를 통해 JVM(Java Virtual Machine) 내에 로드 실행엔진을 통해 컴퓨터가 읽을 수 있는 기계어(각 운영체제에 맞는 기계어)로 해석되어 Runtime Data Area에 배치 Compiler vs Interpreter(컴파일러와 인터프리터의 차이점) Compiler 방식 프로그래밍 언어를 Runtime 이전에 기계어로 해석하는 작업 방식 Interpreter 방식 프로그래밍 언어를 Runtime 이후에 Row(행) 단위로 해석하며 프로그램을 구동하는 작업 방식 참조 : https://jins-dev.tistory.com/..
HTTP 상태 코드(HTTP STATUS CODE) 상태코드 의미 세부 내용 1XX Informational 요청을 받았으며 프로세스를 계속 진행 2XX Success 요청을 성공적으로 받았으며 인식했고 수용 3XX Redirect 요청 완료를 위해 추가 작업 조치가 필요 4XX Client Error 요청의 문법이 잘못되었거나 요청을 처리할 수 없음 5XX Server Error 서버가 명백히 유효한 요청에 대한 충족을 실패 각 상태 코드에 대한 자세한 정보는 아래 링크에서 확인 ※ 출처 : https://www.whatap.io/ko/blog/40/
|빌드 관리 도구란? - 프로젝트에서 필요한 xml, properties, jar 파일들을 자동으로 인식하여 빌드해주는 도구 - 소스 코드를 컴파일, 테스트, 정적분석 등을 하여 실행가능한 앱으로 빌드해줌 - 프로젝트 정보 관리, 테스트 빌드, 배포 등의 작업을 진행해줌 - 외부 라이브러리를 참조하여 자동으로 다운로드 및 업데이트 관리 - Java의 대표적인 빌드 도구 : 안트(Ant), 메이븐(Maven), 그레이들(Gradle) | 메이븐(Maven)이란? - Java의 대표적인 관리 도구였던 Ant를 대체하기 위해 개발됨 - 프로젝트의 외부 라이브러리를 쉽게 참조할 수 있게 pom.xml 파일로 명시하여 관리 - 참조한 외부 라이브러리에 연관된 다른 라이브러리도 자동으로 관리됨 | 메이븐(Maven..