[오늘의 과제]
영속성 컨텐스트란 엔티티를 영구 저장하는 환경이라는 뜻!
애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 한다. 엔티티 매니저를 통해 엔티티를 저장하거나 조회하면 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리한다.
-영속성 컨텍스트의 특징
엔티티 매니저를 생성할 때 하나 만들어진다.
엔티티 매니저를 통해서 영속성 컨텍스트에 접근하고 관리할 수 있다.
제네릭은 특정 형식 옆에 꺽쇠 기호(<>)로 추가되며 꺽쇠 기호 안에 특정 형식(type)을 지정하여 사용합니다. 제네릭으로 형식을 지정하면 지정한 형식의 데이터밖에 입력받을 수 없습니다.
제네릭을 사용하면 동일한 형식을 입력하는 불필요한 반복 동작을 자바에서 최소화 시켜줍니다.
컬렉션(collection)이란 많은 수의 데이터를 그 사용 목적에 적합한 자료구조로 묶어 하나로 그룹화한 객체를 말합니다.
컬렉션의 종류는 ArrayList, LinkedList, Vector, Stack, HashSet, TreeSet, HashMap, TreeMap 등이 있으며, 크게 아래와 같은 자료구조 유형에 따라 구분됩니다.
List : 이름과 같이 목록처럼 데이터를 순서에 따라 관리합니다.
Set : 중복이 허용되지 않는 데이터를 관리합니다.
Map : 데이터를 Key와 Value로 짝을 이루어 관리하며, Key값은 중복을 허용하지 않습니다.
Queue : 데이터 In / Out 순서를 FIFO 방식으로 관리합니다. (FIFO : First In First Out)
Stack : 데이터 In / Out 순서를 LIFO 방식으로 관리합니다. (LIFO : Last In First Out)
컬렉션 클래스들이 데이터를 다룰 때 그 데이터는 기본적으로 객체만 가능합니다. 따라서 char, int, float와 같은 기본형은 사용할 수 없고 대신 Wrapper클래스를 사용해야 합니다. 하지만, 오토박싱(auto boxing)과 오토언박싱(auto unboxing)으로 인해 사용자는 마치 기본형을 다룰 수 있는 것처럼 사용할 수 있습니다.