전체 글
-
[Spring] OSIV 란?Spring JPA 2024. 5. 24. 15:10
영속성 컨텍스트를 뷰까지 열어두는 기능뷰에서도 지연 로딩이 가능하도록 하는 것컨트롤러 계층에서도 데이터를 변경할 수 있다스프링에서는 defualt로 OSIV 값이 true로 설정 되어 있다영속성 컨텍스트 : 엔티티를 영구 저장하는 환경이라는 뜻, 애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 함 동작 방식요청이 들어오면 서블릿 필터나, 스프링 인터셉터에서 영속성 컨텍스트를 생성한다서비스 계층에서 @Transactional으로 트랜잭션을 시작하게 되면 전에 생성한 영속성 컨텍스트를 찾아온다서비스 계층이 끝나고 반환하면 트랜잭션을 커밋하고 영속성 컨텍스트를 flush 한다 이때 트랜잭션은 끝나지만 영속성 컨텍스트는 끝내지 않는다컨트롤러와 뷰까지 영속성 컨텍스트가 유지되므..
-
[데이터베이스] 정규화? 비정규화? (Normalization & De-normalization)데이터베이스 2024. 5. 24. 14:43
정규화 이상현상이 있는 릴레이션을 분해하여 이상현상을 없애는 과정테이블 간에 중복되는 데이터를 허용하지 않는다는 것중복된 데이터를 허용하지 않음으로써 무결성을 유지할 수 있다 릴레이션 : 관계형 데이터베이스에서 정보를 구분하여 저장하는 기본 단위이다. 결국, 릴레이션은 DB 테이블이다.무결성 : 데이터의 정확성, 일관성, 유효성이 유지 되는 것을 의미이상현상 : 테이블을 설계할때 잘못 설계하여 데이터를 삽입, 삭제, 수정할 때 논리적으로 생기는 오류 (삽입 이상, 갱신 이상, 삭제 이상) 장점 데이터베이스 변경 할때 이상현상을 제거 할 수 있음정규화된 데이터베이스에서는 새로운 데이터 형의 추가로 인한 확장 시 그 구조를 변경하지 않아도 되거나 일부만 변경해도 된다 단점 릴레이션을 나눔으로써 릴레이션 ..
-
[묘공단] 코딩 테스트 합격자 되기 5주차[묘공단] 코딩 테스트 합격자 되기 책 정리 2024. 5. 22. 00:29
이 글은 책 코딩테스트 합격자 되기 - 자바편 (골든래빗 - 김희성저)의 내용이 포함되어있습니다. 집합 개념순서와 중복이 없는 원소들을 갖는 자료구조상호 배타적 집합(교집합이 없는 집합 관계)상호 배타적 집합 특성을 활용하는 분야이미지 분할 : 서로 다른 부분으로 나누는 데 사용도로 네트워크 구성: 각 도로가 교차하지 않도록 설계-> 교차로 혼잡을 줄임최소 신장 트리 알고리즘 구현 -> 간선을 추가할 때마다 사이클을 형성하는지 여부게임 개발: 캐릭터 동작을 자연스럽게 구현 ex) 두 캐릭터가 겹치지 않도록 함클러스터링 작업 -> 각 작업이 서로 겹치지 않도록 구성 할 수 있다 연산 유니온 - 파인드 알고리즘 집합 알고리즘에 주로 쓰이는 연산은 합치기와 탐색이다합치기 -> 유니온 union탐색 -> 파인..
-
[운영체제] PCB는 어떤 녀석일까?운영체제 2024. 5. 17. 15:27
PCB는 Process Control Block의 약자로 운영체제에서 *프로세스에 대한 *메타데이터를 저장한 데이터를 말한다즉, 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓은 곳 *프로세스 : Process란 일을 처리하는 과정이나 순서*메타데이터 : Metadata는 일반적으로 데이터에 관한 구조화된 데이터, 데이터를 설명하는 작은 데이터, 대량의 정보 가운데에서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해 일정한 규칙에 따라 콘텐츠에 대해 부여되는 데이터이다 프로세스 제어 블록이라고도 한다프로세스가 생성되면 운영체제는 해당 PCB를 생성한다프로세스가 완료되면 PCB는 제거된다운영 체제에서 특정 프로세스를 나타내는 데 사용된다각 프로세스는 운영 체제에서 PCB로 축약되는 프로세스 제어 블..
-
[네트워크] 3-way handshake 와 4-way handshake네트워크 2024. 5. 10. 22:57
이 글은 TCP의 접속과 해제 과정에 대해서 알아보는 글이다 기본적인 TCP 정보를 알고 싶으면 아래 글을 참고 하면 된다 https://hyeonni.tistory.com/44 [네트워크] TCP 와 UDP전송 계층 (Transport Layer)프로토콜 : TCP, UDP양 끝단의 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있도록 해준다 💡전송 계층 (Transport Layer) vs 네트워크 계층 (Network Layer)전송 계층 : Applicationhyeonni.tistory.com💡 3-Way Handshake3-Way Handshake는 한마디로 말하면 TCP의 접속 과정이다데이터를 전송하기 위해 TCP 통신을 이용하여 네트워크 설정 하는 과정이다양쪽에서 모두 데이터를 전송할 ..
-
[네트워크] TCP 와 UDP네트워크 2024. 5. 9. 22:18
전송 계층 (Transport Layer)프로토콜 : TCP, UDP양 끝단의 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있도록 해준다 💡전송 계층 (Transport Layer) vs 네트워크 계층 (Network Layer)전송 계층 : Application 프로세스들 간의 논리적인 통신을 제공 한다네트워크 계층 : host 간의 논리적인 통신을 제공한다 💡TCP vs UDP TCP (Transmission Control Protocol)인터넷상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜 이다TCP와 IP는 함께 사용하고 IP는 배달, TCP는 패킷의 추적 및 관리를 하게 된다패킷을 세그먼트라고 한다 특징신뢰적이고 연결지향성 서비스를 제공흐름 제어 및 혼잡 제어높은..
-
[자료구조] 힙(Heap) 이란 뭘까?자료구조 2024. 5. 9. 00:18
힙(Heap) 이란? 힙은 데이터에서 최댓값과 최솟값을 빠르게 찾기 위해 고안된 Complete Binary Tree(완전 이진 트리) 이다 우선순위 큐를 위해 만들어진 자료구조 이기도 하다최댓값과 최솟값을 빠르게 찾아내도록 만들어진 자료구조반정렬 성태를 유지 -> 부무 노드의 키 값이 자식 노드의 키 값보다 항상 크거나 작다이진 탐색 트리와는 다르게 중복된 값이 허용 된다 종류최대 힙 (max heap)부모 노드의 키 값이 자식 노드의 키 값보다 크거나 같은 완전 이진 트리key(부모 노드) >= key(자식 노드)최소 힙 (min heap)부모 노드의 키 값이 자식 노드의 키 값보다 작거나 같은 완전 이진 트리key(부모 노드) 💡 왜 사용할까?최솟값이나 최댓값을 찾기 위해 배열을 사용하면 반복문..
-
[묘공단] 코딩 테스트 합격자 되기 4주차 - 트리[묘공단] 코딩 테스트 합격자 되기 책 정리 2024. 5. 7. 16:56
이 글은 책 코딩테스트 합격자 되기 - 자바편 (골든래빗 - 김희성저)의 내용이 포함되어있습니다. 트리- 데이터를 저장하고 탐색하기에 유용한 구조를 갖고 있다- 나무 기둥에서 가지가 뻗어나가는 모습을 거꾸로 뒤접어 놓은 모양이다- 나무 밑둥 즉, root가 맨 위에 있다- 트리는 부모 - 자식 관계의 노드들로 이루어지며 계층적인 구조를 나타내는 자료구조 트리 구성루트 노드-> 노드 중 가장 위에 있는 노드를 루트 노드라고 한다 에지-> 노드와 노드 사이에는 이어주는 선이 있다 이것을 간선 또는 에지 라고 한다 노드-> 간선으로 연결된 노드들은 서로 부모 - 자식 관계가 있다고 표현한다간선으로 직접 연결된 노드중 상대적으로 위에 있는 노드를 부모노드, 아래에 있는 노드를 자식 노드라고 한다자식이 없는 노..