전체 글
JPA에 대한 끄적임
들어가기에 앞서... 해당 포스팅은 JPA에 대해 두서없이 간략하게 정리한 내용입니다. 그렇기에 간략히 "이런 흐름인가 보다~" 정도로만 봐주시면 감사하겠습니다. 혹여나 틀린 내용이 있다면 댓글로 알려주세요 JPA란? JPA(Jakarta Persistence API)란 Java 진영에서 제공하는 ORM(Object Relational Mapping) 기술 간단하게 말하자면 Java를 사용하면서 데이터를 RDB에 어떻게 관리할 것인가?에 대한 API Jakarta EE application programming interface specification that describes the management of relational data in enterprise Java applications. - J..
Spring - 클래스 초기화 방법 비교 (PostConstruct, EventListener)
예전에 Spring 프로젝트에서 Spring 기동 시 Bean으로 등록하는 클래스의 초기화 방법을 포스팅한 적이 있다. 이때는 Bean으로 등록하는 클래스가 정상적으로 생성되어 의존성 주입(DI)까지 끝난 후 초기화가 되도록 하는 방법으로 @PostConstrcut 어노테이션을 사용한 초기화 방법을 주 내용으로 기록하였었다. 이후 @EventListener(ApplicationReadyEvent.class)를 사용하여 초기화하는 방식도 알게 되어 두 방법의 차이점에 대해 기록하고자 한다. @PostConstruct 해당 어노테이션을 사용한 초기화 동작은 언급했듯 DI까지 다 끝나고 정상적으로 클래스가 생성된 이후 수행된다. 즉, 클래스가 생성된 직후 해당 어노테이션을 적용한 초기화 메서드가 실행된다고 보..
Spring Converter & Formatter
개발을 하다 보면 타입을 변환해야 하거나 특정 포맷에 맞춰 변환해야 하는 경우가 상당히 많다. 특히 웹 개발 관점에서 보자면 HTTP를 통한 데이터 통신은 전부 문자열(String)으로 되어있기 때문에 숫자나 날짜 등의 입력이나 출력 시 변환이 필수적으로 들어가게 된다. 이렇게 필수적으로 들어가는 변환을 매번 직접 하기에는 상당히 귀찮고 번거로울 것이다. 그렇기에 Spring에서는 이러한 기능을 수행하는 Converter와 Formatter라는 것을 지원하고 있다. 해당 기능들은 다음과 같은 동작에서 적용되어 사용된다. Spring MVC request parameter @RequestParam @ModelAttribute @PathVariable 설정 파일의 값 (properties, yml 등) @V..