1. ER모델을 관계 데이터 모델로 사상 - 완성된 ER 모델은 실제 데이터베이스로 구축하기 위해 논리적 모델링 단계를 거치는데, 이 단계에서는 사상( mapping )이 이루어 진다. - ER모델과 관계 데이터 모델의 사상 알고리즘은 7단계를 거친다. 단계 사상할 대상 구분 1단계 개체 타입 강한 개체 타입 2단계 약한 개체 타입 3단계 관계 타입 이진 1 : 1 관계 타입 4단계 이진 1 : N 관계 타입 5단계 이진 N : M 관계 타입 6단계 N진 관계 타입 7단계 속성 다중값 속성 2. 개체 타입의 사상 ( mapping ) - [ 1 단계 ] 강한(정규) 개체 타입 - : 정규 개체 타입 E의 경우 대응하는 릴레이션(테이블) R을 생성한다. - [ 2 단계 ] 약한 개체 타입 - : 약한 개체..
1. 개념적 모델링 - 요구사항을 수집하고 분석한 결과를 토대로 업무의 핵심적인 개념을 구분하고 전체적인 뼈대를 만드는 과정 - 개체를 추출하고 각 개체들 간의 관계를 정의하여 ER다이어그램( ERD, Entity Relationship Diagram )을 만드는 과정까지를 말한다. 2. ER 모델 ( PeterChen Notation – 피터첸 표기법 ) - ER모델 : 세상의 사물을 개체(entity)와 개체 간의 관계(relationship)로 표현 - 개체 : 독립적인 의미를 지니고 있는 유무형의 사람 또는 사물로, 개체의 특성을 나타내는 속성(attribute)에 의해 식별된다. 그리고 개체끼리는 서로 관계를 가진다. - ER 다이어그램(ERD) : ER모델은 개체와 개체 간의 관계를 표준화된 ..
1. 무결성 제약조건 ( - 관계 데이터 모델 ) - 무결성은 결함이 없다는 의미로, 데이터 무결성은 데이터베이스의 저장된 데이터의 일관성과 정확성을 지키는 것을 의미한다. ( 무결성 = 일관성 + 정확성 ) - 1 ) 도메인 무결성 제약조건 - : 릴레이션 내의 투플(행)들이 각 속성(열)의 도메인(값의 범위)에 지정된 값만을 가져야 한다는 조건이다. - : SQL문에서 데이터 형식, 널, 기본 값, 체크 등을 사용하여 지정할 수 있다. - 2 ) 개체 무결성 제약조건 - : 기본키 제약이라고도 부른다. ( 기본키 = Unique + Not NULL ) - : 릴레이션(테이블)에 기본키를 지정하고 그에 따른 무결성 원칙 즉, 기본키는 NULL 값을 가져서는 안 되며, 릴레이션 내에 오직 하나의 값만 존..
1. 릴레이션 ( relation ) - 릴레이션이란 행과 열로 구성된 테이블을 의미한다. - Relational이 관계를 의미하지, 릴레이션이 관계를 의미하지 않는다. - 릴레이션은 하나의 집합이며, 집합은 순서를 보장하지 않으며 중복을 허용하지 않는다. - 즉, 데이터베이스에서의 테이블은 행과 열의 순서를 보장하지 않는다. - 또한 하나의 열은 하나의 집합이며, 테이블은 집합의 모임이다. - 하나의 행은 각각의 집합에서 원소 1개씩 선택해서 만들어진 것으로 원소들이 관계를 맺고 있다. - Ex. 도서번호 = { 1,2,3,4,5 } - Ex. 도서이름 = { 축구의 역사, 축구아는 여자, 축구의 이해, 골프 바이블, 피겨교본 } 2. 관계 ( relationship ) - 1 ) 릴레이션 내에서 생성..
1. dbca ( Database Configuration Assistance ) - Oracle Instance + Databases(진짜 데이터가 들어가 있는 파일) => dbca 2. 데이터 / 정보 / 지식의 정의 - 데이터 : 관찰의 결과로 나타나는 정량적 혹은 정성적인 실제 값 ( 관측치 ) - Ex. 에베레스트 산의 높이는 8,848m이다. - 정보 : 데이터에 의미를 부여한 것 - Ex. 에베레스트는 세계에서 가장 높은 산이다. - 지식 : 사물이나 현상에 대한 이해 - Ex. 에베레스트 보고서 3. 데이터베이스 - 데이터베이스는 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것을 의미한다. - Ex. 학생 데이터를 모아 학사 데이터베이스에 통합해 ..
1. 자바 표준 API - 자바표준 API란 자바에서 기본적으로 제공하는 라이브러리를 의미한다. - 프로그램을 개발하는데 자주 사용되는 클래스 및 인터페이스의 모음이다. - + API 도큐먼트 : 쉽게 API를 찾아 이용할 수 있도록 문서화한 것 - + https://docs.oracle.com/javase/8/docs/api/ 2. Java.lang 패키지 - 자바 프로그램의 기본적인 클래스를 담은 패키지로, 이 패키지에 포함된 클래스와 인터페이스의 경우에는 import문 없이 사용이 가능하다. - 주요 클래스 : Object, System, Class, String, StringBuffer/StringBuilder, Math, Wrapper 3. Object 클래스 - 자바의 최상위 부모 클래스로, ..
1. 데이터베이스 관리 시스템 ( DBMS ) - 응용 프로그램과 데이터베이스의 중재자로서 모든 응용프로그램들이 데이터베이스를 공용할 수 있게 관리해 주는 시스템 2. 데이터베이스 관리 시스템의 종류 - 1 ) 계층형 데이터베이스 - : 구조를 트리형 구조로 정의하고 부모, 자식 형태를 갖는 구조이다. 자식은 하나의 부모만 가질 수 있다. ( 아래에서 위로 밖에 못 간다. ) - 2 ) 네트워크형 데이터베이스 - : 트리형 구조를 갖지만, 레코드 간 다양한 관계를 그물처럼 갖는 구조이다. 자식은 여러 부모를 가질 수 있다. - 3 ) 관계형 데이터베이스 ( RDBMS ) - : 키와 값들의 관계를 테이블 구조로 만든 것이다. 현재 다수의 데이터 베이스가 관계형 데이터 베이스를 적용하고 있다. - 4 ) ..
1. 스레드 병렬처리의 필요성 - 블로킹( 대기상태 )이 되는 메소드 : - (1) accept( ) (2) connect( ) (3) read( ) (4) write( ) - 이때, 스레드가 블로킹이 되면, 다른 작업을 수행하지 못하게 된다. - 그렇기에, 입/출력할 동안 다른 클라이언트의 연결 요청 수락이 불가능해지며 - 입/출력할 동안 다른 클라이언트의 입/출력이 불가능해진다. - 그렇기에 accept( ), connect( ), read( ), write( )는 별도의 작업 스레드로 생성해야 된다. ( 이때 서버는 중개의 역할만을 하는 것이 좋다. ) 2. 데이터 베이스 - Database는 OS와 APP 사이에 존재하기에, Middleware라고 부른다. 3. @Log4j2 – 로그의 심각도 -..
1. 채팅의 종류 : - (1) 1 : 1 채팅 : Unicast - (2) N : M 채팅 : Muticast 2. 채팅구현에 있어 ServerSocket의 단점 : - ServerSocket을 활용한 네트워킹을 할 경우, 모든 작업을 Main이라는 Thread가 모든 작업을 처리해야 하기 때문에 다른 작업을 동시에 할 수 없다. - 그렇기에, 동시에 다양한 작업을 하기 위해 멀티 스레드를 사용한다. 3. 멀티 스레드 ( 12장 ) - 프로세스(process) : 실행 중인 하나의 프로그램을 의미하며, 하나의 프로그램이 다중 프로세스를 만들기도 한다. ( ex. 브라우저 ) - 멀티 프로세스 : 독립적으로 프로그램들을 실행하고, 여러 가지 작업을 처리한다. - 멀티 태스킹[ (Muti-Tasking) ..
1. TCP 네트워킹 - ServerSocket 생성자에 바인딩할 포트를 대입하고 객체를 생성한다. - ServerSocket severSocket = new ServerSocket(); - severSocket.bind(new InetSocketAddress(listenPort)); - 연결수락은 accept( ) 메소드를 통해서 이루어 지며, 이 메소드는 클라이언트가 연결 요청을 줄 때까지는 블로킹한다. - Socket sock = severSocket.accept(); - ServerSocket은 이용이 끝나면, 자원을 돌려줘야 하기에 닫아줘야 한다. - + 요청을 받을 때까지 대기 상태( Blocking )가 되는 메소드 : - 1 ) ServerSocket의 accept( ); - 2 ) Soc..