가장 기본적으로 사용되는 브랜치로, 별도로 브랜치를 만들지 않으면 master branch 한 줄기에서 계속 commit 이 발생하게 된다.일반적으로 master branch 에는 기능이 검증되고 문제가 없어 제품에 포함이되어도 되는 내용들만 포함되어져 있다.만약 새로
git 으로 tracking 하고싶지 않은 파일이 있다면 git ignore 이라는 파일을 활용할 수 있다..gitignore 파일안에 tracking 을 원치 않는 파일명이나 혹은 특정 디렉토리를 주소를 적을 수 있고 를 활용할 수 도 있다.(ex) .txt 를
엔티티와 엔티티의 필드들이 어떤식으로 매핑되는지에 대해 알아보았다. 하지만 앞선 포스팅에서 다루지 않은 부분이 있는데 그것은 객체가 연관관계를 다루는 법과, RDB가 연관관계를 다루는 방법의 차이다. 객체와 연관관계 객체에서는 연관관계를 어떻게 표현하는가? 바로, 참
앞선 포스팅들을 통해 JPA 의 내부구조와 동작흐름에 대해 알아보았다.그럼 이제, JPA 를 사용해서 실제 RDB와는 어떤식으로 매핑되는지에 대해 알아보도록 하자. JPA를 통해 관리할 객체에 붙이는 어노테이션이다. 기본생성자가 필수적인데, 사용하게 되는 JPA 구현체
영속성컨텍스트(Persistence Context) 앞선 포스팅에서 JPA 가 동작하는 과정에서 EntityMangerFactory 와 EntityManager 가 생성되는 과정을 살펴보았다. 해당 과정을 이미지화해서 보자면 다음과 같다. 그리고 DB에 영속화하기
이번 포스팅에서는 JPA를 사용해보도록 하겠다.우선, 관계형 DB가 필요할 테니 선호하는 DB를 설치하도록 하자.(포스팅에서는 H2 DB를 사용합니다) 그리고 JPA 는 앞서 말했듯이 인터페이스이다. 사용하기 위해서는 구현체가 필요한데, 가장 많이 사용되는 JPA 구현
JPA 는 Java Persistence API 의 준말로 자바 진영의 ORM 기술 표준이다. 앞선 포스팅에서 ORM 에 대해서 설명했지만 추가적으로 말하자면 ORM 은 Object-Relational Mapping 의 준말로 말그대로 객체와 관계형 데이터베이스 사이를
현 시대 대부분의 어플리케이션들은 객체지향 언어를 사용해 개발되고 또 관계형 DB를 사용해 데이터를 영속화한다.객체지향적인 설계와 개발이 주는 장점은 매우 크고, 그렇기 때문에 어플리케이션을 개발 할때 객체지향적인 개발의 중요성은 항상 강조되어왔다. 그리고, 관계형 D
학습사항 스트림 (Stream) / 버퍼 (Buffer) / 채널 (Channel) 기반의 I/O InputStream과 OutputStream Byte와 Character 스트림 표준 스트림 (System.in, System.out, System.err) 파일 읽고
학습사항 어노테이션을 정의하는 방법 @retention @target @documented 어노테이션 프로세서 어노테이션을 정의하는 방법 Annotation? Annotation 을 번역하면 '주석' 이다. 자바에서 주석(comment)을 작성하는 방법은 한 줄 주석
학습사항 enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet Enum 이란? '열거형' 으로 해석되는 enum 은 서로 연관된 상수들의 집합을 선언하기 위한 특수한 형태의 클래스이다.
학습사항 Thread 클래스와 Runnable 인터페이스 쓰레드의 상태 쓰레드의 우선순위 Main 쓰레드 동기화 데드락 Thread 클래스와 Runnable 인터페이스 Thread 싱글쓰레드 프로그램과 멀티쓰레드 프로그램 쓰레드는 프로세스 내에서 실행되는 흐름의 단
CPU 는 PC(Program counter)레지스터가 가리키고 있는 메모리 주소의 인스트럭션을 읽어와 수행하고 PC레지스터는 다음 주소를 가리키게 된다. 단, 인스트럭션을 수행하고 나면 Interrupt line 에 인스트럭션이 있는지 확인하고 만약 있다면 CPU 제
클럭마다 메모리에서 instruction 을 읽어서 실행한다.cpu 내부에는 메모리보다 더 빠르게 동작하는 저장 공간인 Register 가 있다.mode bit 은 cpu 에서 실행되는 것이 운영프로그램인지 사용프로그램인지 구분하여 준다. (0 이면 OS 코드 수행 ,
컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어를 하드웨어와 연결해주는 소프트웨어 계층을 의미한다. 좁은 의미의 운영체제 : 커널 - 부팅이후 메모리에 상주 넓은 의미의 운영체제 : 커널 뿐 아니라 주변 시스템 유틸리티까지 포함한 개념 현대에 가장
학습사항 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 아닌 것의 차이는? 커스텀한 예외 만드는 방법 1. E
객체 인스턴스를 생성하는 방법 객체 인스턴스를 생성할 때, 기본적으로 사용하는 방법은 생성자를 사용하여 만드는 것이다. 그렇지만, 이 방법 이외에 static 팩토리를 사용할 수 도 있다. 그렇다면 static 팩토리를 활용하면 얻을 수 있는 것들은 무엇일까? 🎁 1. 직관적인 Naming 이 가능하다. 위와 같이 생성자의 경우 반드시 클래스 이름...
많은 개발자들이 사용하고 있는 VCS 인 git 에 대해 제대로 이해하기 위해, Scott Chacon 과 Ben Straub 이 쓰고 Apress 이 발간한, Pro Git book 을 참고하여 공부한 포스팅입니다. 더 많은 자료를 얻고 싶으신 분들은 이 곳을 참고하
목차 0\. 들어가기전.. 1\. 인터페이스 정의하는 방법2\. 인터페이스 구현하는 방법3\. 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법4\. 인터페이스 상속5\. 인터페이스의 기본 메소드 (Default Method), 자바 86\. 인터페이스의 static
package 키워드 import 키워드 클래스패스 CLASSPATH 환경변수 -classpath 옵션 접근지시자 1. Package 키워드 2. Import 키워드 3. 클래스패스 4. CLASSPATH 환경변수 클래스 패스란 클래스가 위치하는 경로를 의미한다.