전체 글

방향(Direction) : 단방향, 양방향다중성(Multiplicity)  : 다대일 (N:1) , 일대다 (1:N) , 일대일 (1:1) , 다대다 (N:M)연관관계의 주인(Owner) : 객체 양방향 연관관계는 관리 주인이 필요    객체를 테이블에 맞추어 모델링 (참조 대신에 외래 키를 그대로 사용) @Entity public class Member { @Id @GeneratedValue private Long id; @Column(name = "USERNAME") private String name; @Column(name = "TEAM_ID") private Long teamId; … } @Entity public clas..
@Id데이터베이스 테이블의 기본 키(PK)와 객체의 필드를 매핑시켜주는 어노테이션 @Id만 사용할 경우 기본 키를 직접 할당해 주어야 하며, 데이터가 생성해주는 값을 사용하려면 @GeneratedValue를 사용한다.  @GeneratedValue기본 키를 자동 생성해주는 어노테이션 속성으로는 startegy가 있으며, 이를 통해 자동 생성 전략을 지정할 수 있음. IDENTITY@GeneratedValue(strategy = GenerationType.IDENTITY) 기본 키 생성을 데이터베이스에 위임하는 전략 주로 MySQL, PostgreSQL, SQL Server에서 사용합니다.예를 들어 MySQL의 AUTO_INCREMENT 기능은 데이터베이스가 기본 키를 자동으로 생성해줍니다.IDENTITY..
@매핑 어노테이션 정리  @Column@Column은 객체 필드를 테이블의 컬럼에 매핑시켜주는 어노테이션이다.   @Enumerated자바 enum 타입을 매핑할 때 사용 (ORDINAL 사용 X!!)  -> 만약 enum 클래스에 USER, ADMIN만 있었다면 DB에는 USER 0 , ADMIN 1로 저장되지만새로 클래스를 수정해 GUEST, USER, ADMIN으로 변경한다면 전에 있던 DB는 그대로 유지되어GUEST와 USER가 0으로 겹쳐버리는 경우가 발생한다.  @Temporal참고: LocalDate, LocalDateTime을 사용할 때는 생략 가능(최신 하이버네이트 지원)   @Lob데이터베이스 BLOB, CLOB 타입과 매핑• @Lob에는 지정할 수 있는 속성이 없다.• 매핑하는 필드 ..
엔티티 매핑 소개객체와 테이블 매핑 : @Entity, @Table필드와 컬럼 매핑 : @Column기본 키 매핑 : @Id연관관계 매핑 : @ManyToOne, @JoinColumn @Entity@Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다. JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수  주의사항기본 생성자 필수 (파라미터가 없는 public 또는 protected 생성자)final 클래스, enum, interface, inner 클래스 사용X저장할 필드에 final 사용Ximport jakarta.persistence.Entity;import jakarta.persistence.Id;@Entitypublic class Member { @Id private ..
Connecting Devices host와 network는 연결되어있다. ( 분리되어 작동하지 않는다. ) 연결시켜주는 방법에는 다음과 같은 3가지가 존재한다. hubslink - layer switchesrouters     Hubs줄어든 신호를 다시 복구시키는 역할 (신호를 확장) - physical layer 에서만 작동하는 장치- 신호를 확장하는 장치를 repeater 라고 부름.physical layer 에는 주소가 없으니 data-link layer까지 가서 주소 확인 후 내꺼가 맞다면 accept, 아니라면 discarded    Link- layer switch physical layer 로 부터 수신하는 신호를 재생성함. - physical 과 data - link layer 에서 작동..
Ethernet Protocol데이터링크 계층과 물리계층은 근거리 통신망(LAN)과 광역 통신망(WAN)의 영역이다.위의 두가지 계층 기능에 대해 구체적으로 정의하고자 한다. Ethernet protocol 의 4세대1. Standard Ethernet ( 10 Mbps ) : 1세대2. Fast Ethernet ( 100 Mbps ) : 2세대3. Gigabit Ethernet ( 1 Gbps ) : 3세대4. 10 Gigabit Ethernet ( 10 Gbps) : 4세대    Standard Ethernet  - Preamble + SFD : Flag 역할- Type : ARP나 IP 등을 구분하는 정보- CRC : error check 수 Ethernet 최소 전파 시간 -> 전파시간의 최소 2..
Paging비균등 고정 분할 기법과 가변크기 분할 기법은 메모리를 효율적으로 이용하지 못한다. 전자는 internal fragmentation(내부 단편화)를 초래하고 후자는 external fragementation(외부 단편화)를 일으킨다. 주기억장치를 비교적 작은 고정 조각으로 나눈다고 하자. 페이지라 불리는 이 프로세스 조각은 프레임이라 불리는 빈 메모리의 조각에 저장될 수 있다. 운영체제는 각 프로세스마다 하나의 페이지 테이블을 유지한다.이 페이지 테이블은 프로세스의 각 페이지들에 해당하는 프레임의 위치를 관리한다.프로그램 안에서 각 논리주소는 페이지 번호와 페이지 내의 오프셋으로 구성된다.   아래 그림은 페이지와 프레임의 사용 예이다. (a)는 15개의 빈 프레임들을 의미한다.(b)는 4개의..
Memory Management (메모리 관리)멀티프로그래밍 시스템에서는 주기억장치의 "사용자" 부분이 다수의 프로세스들을 수용하기 위해 더 여러 개로 나뉘게 되는 과정을 Memory Management(메모리 관리)라고 한다. 메모리는 사용가능한 처리기 시간을 소비하기에 충분한 수의 프로세스들이 준비 상태에 있도록 할당되어야 한다.   메모리 관리가 만족시켜야 하는 요구 조건은 다음과 같다.Relocation (재배치)Protection (보호)Sharing (공유)Logical organization (논리적 구성)Physical organization (물리적 구성)   Relocation (재배치)- 프로그래머는 자신의 프로그램이 수행될 때 주기억장치에 다른 어떤 프로그램들이 존재할지를 미리 알 ..
위와 같이 구성된 네트워크가 존재할 때, 오른쪽 3대의 컴퓨터가 서로 통신을 위해 데이터를 주고 받는다 할 때 A라는 컴퓨터가 B라는 컴퓨터에게 데이터를 보내는 동시에 C라는 컴퓨터가 B라는 컴퓨터에게 데이터를 보낸다면  A와 C는 동시에 하나의 선으로 통신을 보낸다. 하지만 이는 충돌(Collision)이 발생하고 충돌이 일어나면 B는 어떤 데이터라도 제대로 받지 못하게 된다. 그래서 media access control 이라는게 존재한다. 즉, link를 공유하는 상황에서 서로 원활하게 통신하기 위해 나온 것이 MAC이다.  Mutiple-access protocols은 다음과 같이 분류된다. 1. Controlled-access protocols- station은 어느 station이 전송할 권한이..
Data Link Control(DLC)계층에서 데이터를 어떻게 다루는지에 대해 알아보자. Data link control은 크게 세 가지로 나눌 수 있는데, 1. Framing2. Flow control3. Error Control이 있다.  FramingData link 계층은 상위 계층인 Network 계층에서 데이터를 받아 주소를 붙이고 Physical 계층을 통해 목적지로 보낸다. 이때 "주소를 붙이고"와 관련된 일들을 Framing 이라고 한다. 목적지 주소는 결국 패킷이 어디로 가야하는지에 대한 정의를 해주고보내는 주소는 수신인이 수신을 확인할 수 있도록 도와준다.  Data link 계층에서 다루는 객체의 이름이 frame이다. 따라서 상위 계층인 Network 계층으로부터 datagram..
말동말동현
동현s토리