본문 바로가기

분류 전체보기

(82)
[데이터베이스] 릴레이션 정규화(제1정규형, 제2정규형, 제3정규형, BCNF)-hoyhi-tistory 제 1 정규형 한 릴레이션 R이 제1정규형을 만족할 필요 충분 조건은 릴레이션 R의 모든 애트리뷰트가 원자값만을 갖는다는 것 즉 릴레이션의 모든 애트리뷰트에 반복 그룹(repeating group)이 나타나지 않으면 제1정규형을 만족함 제1정규형을 만족하지 않는 위의 그림을 제1정규형으로 변환하는 방법 반복 그룹 애트리뷰트에 나타나는 집합에 속한 각 값마다 하나의 튜플로 표현 제1정규형에 존재하는 갱신 이상 모든 애트리뷰트가 원자값을 가지면 제1정규형을 만족함 이 릴레이션의 기본 키는 (학번,과목번호) 수정 이상 - 한 학과에 소속한 학생 수 만큼 그 학과의 전화번호가 중복되어 저장되므로 여러 학생이 소속된 학과의 전화번호가 변경되었을 때 그 학과에 속한 모든 학생들의 튜플에서 전화번호를 수정하지 않으면..
[정보처리산업기사]운영체제-hoyhi 임계 구역 (Critical Section) 다중 프로그래밍 운영체제 환경에서 여러 개의 프로세스가 데이터 및 자원 공유 -> 어느 한 시점에 하나의 프로세스만 자원 또는 데이터를 사용하도록 지정 임계 구역에는 하나의 프로세스만 접근 가능, 해당 프로세스가 자원 반납 후 다른 프로세스가 자원 및 데이터 사용 가능 임계 구역 내 프로세스 진입 허용은 운영체제의 제어 권한 임계 구역에서 프로세스가 무한 루프에 빠지지 않도록 함 임계 구역 동시 사용으로 인한 임계 영역 문제 발생 가능성 해결 -> 상호 배제, 진행, 한계 대기 상호 배제 (Mutual Exclusion) 특정 프로세스가 공유 자원 사용 시 다른 프로세스가 해당 공유 자원 사용 못하게 제어 여러 프로세스가 동시에 공유 자원 사용하려 할 때 프로..
[Springboot]게시판 만들기 3장 서비스 계층과 DTO - hoyhi 실제 프로젝트 작성 시 엔티티 객체를 영속 계층 바깥쪽에서 사용하는 방식보다는 DTO(Data Transfer Object) 이용 DTO는 엔티티 객체와 달리 각 계층에서 주고 받는 우편물이나 상자의 개념 순수하게 데이터를 담고 있다는 점에서 엔티티 객체와 유사하지만 목적 자체가 데이터의 전달이므로 읽고 쓰기가 가능하고 일회성으로 사용되는 성격이 강함 JPA를 사용하면 엔티티 객체는 단순히 데이터를 담는 객체가 아니라 실제 데이터와 연관있고, 내부적으로 엔티티 매니저가 관리하는 객체이며, DTO가 일회성으로 데이터를 주고 받는 용도로 사용되는 것과 달리 생명주기도 달라 분리해서 처리하는 것을 권장 예제에서는 서비스 계층을 생성하고 서비스 계층에서는 DTO로 파라미터와 리턴 타입 처리 DTO를 사용하면 엔..
[Springboot]게시판 만들기 2장 Querydsl 설정 및 테스트 - hoyhi Querydsl 이용 시 코드 내부에서 상황에 맞는 쿼리 생성이 가능하지만 이를 위해서는 작성된 엔티티 클래스를 그대로 사용하는 것이 아니라 Q도메인 이라는 것을 이용해야 함 그리고 이를 작성하기 위해서 Quertdsl 라이브러리를 이용해서 엔티티 클래스를 Q도메인 클래스로 변환하는 방식 이용 -> 추가적인 설정 필요 1. build.gradle 에 코드 추가 plugins { id 'org.springframework.boot' version '2.4.5' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' id 'war' // Querydsl 사용을 위해 추가 id 'com.ewerk.gradle.plugins.queryds..
[Springboot]게시판 만들기 1장 프로젝트 설정 및 테이블 생성 - hoyhi 1. 프로젝트 생성 2. build.gradle -> dependencies 에 코드 추가 dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' annotationProcessor ..
[DataBase]데이터베이스 설계와 ER 모델-hoyhi 데이터베이스 설계와 ER 모델 데이터베이스 설계 - 개념적 데이터베이스 설계와 물리적 데이터베이스 설계로 구분 - 개념적 데이터베이스 설계는 실제로 데이터베이스를 어떻게 구현할 것 인가와는 독립적으로 정보 사용의 모델을 개발하는 과정 - 물리적 데이터베이스 설계에서는 물리적인 저장 장치와 접근 방식을 다룸 - 개념적 데이터베이스 설계 과정에서 조직체(실세계)의 엔티티, 관계, 프로세스, 무결성 제약조건 등을 나타내는 추상화 모델을 구축 - 엔티티는 서로 구분이 되면서 조직체에서 데이터베이스에 나타내려는 객체(사람, 장소, 사물 등)를 의미 - 관계는 두 개 이상의 엔티티들 간의 연관을 나타냄 - 프로세스는 관련된 활동을 나타냄 - 무결성 제약조건은 데이터의 정확성과 비즈니스 규칙을 의미 개념적 수준의 모..
[DataBase]관계 모델 개념-hoyhi 관계 데이터 모델과 제약조건 - 관계 데이터 모델은 지금까지 제안된 데이터 모델들 중에서 가장 개념 이 단순한 데이터 모델의 하나 - IBM 연구소의 E.F. Codd가 1970년에 관계 데이터 모델을 제안함 - 관계 데이터 모델을 최초로 구현한 가장 중요한 관계 DBMS 시제품은 1970년 대에 IBM 연구소에서 개발된 System R - 1980년대 후반부터 여러 가지 데이터 모델들이 새로 등장했지만 관계 DBMS는 여전히 가장 널리 사용되는 DBMS 관계 데이터 모델이 큰 성공을 거둔 요인 - 바탕이 되는 데이터 구조로서 간단한 테이블(릴레이션)을 사용 - 중첩된 복잡한 구조가 없음 - 집합 위주로 데이터를 처리 - 숙련되지 않은 사용자도 쉽게 이해할 수 있음 - 다른 데이터 모델에 비해 이론이 잘..
[DataBase]데이터베이스 시스템-hoyhi 데이터베이스 시스템 컴퓨터를 사용하여 정보를 수집하고 분석하는데 데이터베이스 기술 활용 데이터 : 현실 세계에서 벌어지는 일들을 단순한 방법으로 관찰하고 측정해서 얻은 값 정보 : 그 데이터를 처리해서 얻을 수 있는 결과 데이터베이스(database)의 정의 데이터베이스는 조직체의 응용시스템들이 공유해서 사용하는 운영데이터(operation data)들이 구조적으로 통합된 모임 데이터베이스의 구조는 사용되는 데이터 모델에 의해 결정 데이터베이스의 특징 - 데이터베이스는 데이터의 대규모 저장소로서, 여러 부서에 속하는 여러 사용자에 의해 동시 사용 - 모든 데이터가 중복을 최소화하면서 통합 - 데이터베이스는 한 조직체의 운영 데이터뿐만 아니라 그 데이터에 관한 설명까지 포함 - 프로그램과 데이터 간의 독립..