Memo 49

[Spring] 디자인 패턴

>디자인 패턴 -디자인이란? 다른 사람들이 객체 지향 설계 기법에 맞춰서 이미 오래전에 만들고 사용해오던 방식(패턴)들 우리들이 같은 방식으로 따라 만들어도 되지만, 이미 정해진 디자인 패턴은 그냥 가져와서 사용할 수도 있다. >빌더 패턴 : 생성자와 setter을 대신하는 기능을 사용할 수 있는 디자인 패턴이다. : 필수 정보를 인자로받는 Builder 생성자와 선택 정보를 인자로받는 생성자를 사용할 수 있다. : 선택 정보 생성자는 메서드명처럼 소문자이고, 선택 정보의 필드명으로 되어있다. : 빌더 패턴을 사용한 클래스를 만들기 위해서는 build() 메서드를 사용해야한다. : DTO 또는 Entitiy 클래스에 사용하기 좋다. : Lombok 에서 @Builder로 지원한다. >전략 패턴 : 인터페..

Memo/짧은 메모 2022.11.11

[Spring] Event (미완)

Event Spring Bean과 Spring Bean 사이의 데이터를 전달하는 방법 중 하나로, 다르게는 Spring Bean 사이의 결합을 느슨하게 만드는 방법이라고 말할 수 있다. Event를 이용해서 Spring Bean간의 결합을 느슨하게 할 수 있는 이유는 요청과 응답을 클래스 혹은 계층 간 직접적으로 넘기는 것이 아니라 중간 다리 역할을 하기 때문이다. 참고 링크 https://gudwnsgur.tistory.com/19

Memo/짧은 메모 2022.11.08

[JAVA] Enum

Enum >Construct : Enum의 생성자는 private이다. 그 이유는 Enum의 특성과 관련이 있다. (private 생략해도 IDE는 private이 있다고 인식한다) : Enum은 런타임이 아닌 컴파일 타임에 모든 값을 알 수 있어야 하기 때문이다. : Enum의 생성자가 있는 이유는 Enum은 사실 클래스이기 때문이고, 생성자를 활용하는 방안은 내부 필드를 외부에서 인스턴스 생성 방식으로 사용하는 것이다. (새로운 enum 값을 생성하기 위함이 아님) >예시 //Enum 내부 구조 enum Cake{ CAKE_CHEESE(500), CAKE_STRAWBERRY(300), CAKE_MILK(400); private int kcal; (private) Cake(int kcal){ this...

Memo/짧은 메모 2022.10.30

[Spring]예외 전환

예외 전환 1. Checked Exception이 Runtime 도중 발생할 수 있다. 2. 1번의 상황일 경우, 처리가 너무 번거로워지므로 @RestControllerAdvice로 보내서 UnChecked Exception 처럼 처리해버린다. 3. 이를 예외 전환이라고 한다. Checked Exception은 원래는 try catch로 잡고 문제를 처리하는게 맞다. 하지만 Checked Exception 예외가 언제 어디서 무엇 때문에 발생할 지 미리 알고 다 try catch로 잡기는 힘들다. 그렇기 때문에 예외 전환을 사용해서 Unchecked Exception 으로 취급하여 예외에 대한 메세지를 명확하게 전달하는게 효과적일 수 있다.

Memo/짧은 메모 2022.10.27