JAVA/Spring
-
패스트캠퍼스 챌린지 5일차JAVA/Spring 2021. 11. 5. 22:27
1. Transaction 트랜잭션의 특징을 정의한 말로 ACID라는 말이 있다. Atomic : 원자성 트랜잭션의 원자성 덕분에 은행 입출금 시, 한 쪽에서는 돈이 빠져나갔는데 다른 쪽에서 돈을 받지 못하는 등의 문제가 발생하지 않는다. 트랜잭션의 가장 중요한 덕목 중 하나이다. Consistency : 일관성 모든 DB 테이블의 자료들은 정해진 규칙에 맞춰서 자료가 저장되어야만 한다. 트랜잭션이 종료되는 지점에는 꼭 자료들의 일관성이 맞춰져있어야만 한다. 예를 들어, '일반적인 은행 계좌의 잔액은 0원 이하로 될 수 없다' 등의 규칙이 트랜잭션이 끝난 후에 꼭 지켜져 있어야만 한다. Isolation : 고립성 DB를 처리하는 방법들에 따라서 Isolation 레벨이 달라진다. Isolation 레벨..
-
패스트캠퍼스 챌린지 4일차JAVA/Spring 2021. 11. 4. 13:09
1. H2 DB RDB 중 하나로 설치하지 않아도 사용할 수 있는 데이터베이스 툴이다. 간단한 테스트 용도로 사용하기 좋으며 어플리케이션이 종료되면 관련된 모든 데이터가 소멸된다. 아래는 H2DB를 활용하여 테이블을 생성하고 데이터를 삽입하는 방법이다. 우선 DB에 활용할 Entity를 정의해주도록 한다. dmaker.entity.Developer @Getter @Setter @Builder // @Builder가 들어가면 @NoArgsConstructor와 @AllArgsConstructor를 함께 넣어주어야 한다. @NoArgsConstructor @AllArgsConstructor @Entity @EntityListeners(AuditingEntityListener.class) public clas..
-
패스트캠퍼스 챌린지 3일차JAVA/Spring 2021. 11. 3. 19:48
1. Null Safety Null Safety는 Null 연관성을 높이는 법이다. 아래와 같은 코드를 만들지 않는 방법 혹은 아래와 같은 널 체크를 하지 않아서 발생하는 NPE(Null Pointer Exception)을 방지하는 방법 완벽한 방법은 아니지만 IDE에서 경고를 표시함으로써 1차적인 문제를 방지하고, 정확한 에러 위치를 확인할 수 있도록 도움 public void method(String request) { if(request == null) return; // normal process System.out.println(request.toUpperCase()); } @NonNull Annotation 해당 값이나 함수 등이 Null이 아님을 나타내는 어노테이션 org.springfram..