전체 글

전체 글

    트랜잭션

    트랜잭션

    기술면접 대비 - 트랜잭션(Transaction) 오늘은 트랜잭션에 대해서 알아보고자 한다. 트랜잭션(Transaction) 트랜잭션은 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위를 말한다. 데이터베이스에 접근하는 방법은 쿼리(Query)이므로, 즉 여러 개의 쿼리들을 하나로 묶는 단위를 말한다. 트랜잭션의 특징으로는 원자성(Atomicity), 일관성(Consistency), 독립성(Isolation), 지속성(Durabiltiy)이 있으며 통칭 ACID 특징이라 한다. ACID 트랜잭션은 데이터의 무결성을 보장한다. 데이터의 무결성 데이터의 정확성, 일관성, 유효성을 유지하는 것을 말한다. 데이터의 무결성이 보장되어야 데이터의 중복, 누락, 잘못된 논리 관계로 인한 문제 등이 발생..

    ERD와 정규화 과정

    ERD와 정규화 과정

    기술면접 대비 - ERD와 정규화 과정 오늘은 ERD와 정규화 과정에 대하여 간단하게 정리해보고자 한다. ERD(Entity Relationship Diagram) ERD는 데이터베이스를 구축할 때 가장 기초적인 뼈대 역할을 하며, 릴레이션(테이블) 간의 관계들을 정의한 것이다. Entity(엔터티) 엔터티는 사람, 장소, 물건, 사건, 개념 등 여러 개의 속성을 지닌 명사를 의미한다. ERD의 중요성 ERD는 시스템의 요구 사항을 기반으로 작성되며 이 ERD를 기반으로 데이터베이스를 구축한다. 데이터베이스를 구축한 이후에도 디버깅 또는 비즈니스 프로세스 재설계가 필요한 경우에 설계도 역할을 담당하기도 한다. 정규화 정규화란 릴레이션(테이블) 간의 잘못된 종속 관계로 인하여 데이터베이스 이상 현상이 일어..

    20221204_WIL(SQLD 합격)

    20221204_WIL(SQLD 합격)

    20221204_WIL(SQLD 합격) 들어가며 기다리던 SQLD 시험 결과가 금주 금요일에 발표되었다. 결과는 다행히도 합격! 금주의 WIL은 SQLD 학습 및 취득을 과정을 짧게나마 정리해보고자 한다. SQLD, 학습부터 합격까지 부트캠프 최종 프로젝트를 진행하며 내가 가장 집중하였던 파트는 '검색'이었다. 내가 담당하였던 다른 부분들도 마찬가지였으나 특히 검색 API는 RDS 및 SQL에 대한 이해가 요구되었다. 검색 메서드의 구현 자체는 어렵지 않았지만 이를 심화시키기 위해서는 추가 학습이 요구되었다. 하지만 실전 프로젝트는 6주라는 한정된 기간 동안 진행되었기에 이를 위하여 많은 시간을 투자하기는 어려웠기에 당장의 프로젝트 완성에 집중하기로 하였다. 그렇게 QueryDSL과 Full Text I..

    http와 https

    http와 https

    기술면접 대비 - http와 https의 차이 오늘은 http와 https에 대해 알아보고자 한다. HTTP(HyperText Transfer Protocol) HTTP는 인터넷에서 웹 서버와 사용자 컴퓨터에 설치된 웹 브라우저 사이에 문서를 전송하기 위한 통신 규약(Protocol)이다. 즉, 인터넷에서 하이퍼텍스트(HyperText)를 전송(Transfer) 하기 위해 사용되는 통신 규약(Protocol)인 것이다. HTTP 서버는 기본 포트인 80번 포트에서 서비스 대기 중이며, 클라이언트(웹 브라우저)가 TCP 80 포트를 사용해 연결하면 서버는 요청에 응답하면서 자료(정보)를 전송한다. HTTP는 정보를 '텍스트'로 주고받는다. 단순 텍스트를 주고받기 때문에 네트워크에서 전송 신호를 인터셉트하는..

    [백준] A+B - 4(feat.BufferedReader EOF)

    [백준] A+B - 4(feat.BufferedReader EOF)

    들어가며 1일 1 커밋을 위해 백준 문제 풀이를 이어나가다 기존의 학습했던 내용으로는 해결 불가능한 부분이 발생하여 문제 해결 후, 그 과정을 기록해보고자 한다. A+B - 4 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 A+B를 출력한다. 예제 입력 1 1 1 2 3 3 4 9 8 5 2 예제 출력 2 2 5 7 17 7 EOF(End of File) 이 문제 자체의 난이도만 보았을 때는 정말 쉬운 문제이지만 가장 중요한 점은 파일 종료 조건이 없이 예제 입력만 주어졌다는 것이다...

    [Java] static, final, staic final 차이

    [Java] static, final, staic final 차이

    기술면접 대비 - static, final, staic final 차이 들어가며 오늘은 자바의 static, final 키워드 그리고 static final 간의 차이를 정리해보고자 한다. static public class PlusClass{ static int field1 = 15; static int plusMethod(int x, int y){ return x+y; } public static void main(String[] args){ int ans1 = PlusClass.plusMethod(15,2); int ans2 = PlusClass.field1 + 2; } } static은 "고정된" 이라는 의미를 가진다. 메모리를 공유하여 사용하기 때문에 필요할 때 바로바로 호출하거나 데이터를 가져..