⭐ SpringBoot/@Annotation (4) 썸네일형 리스트형 @UtilityClass # UtilityClass 에 대해서 정의@UtilityClass는 Project Lombok 라이브러리에서 제공하는 어노테이션입니다. 이 어노테이션은 클래스가 유틸리티 클래스임을 나타냅니다.유틸리티 클래스란, 상태를 가지지 않는 메서드들만을 모아놓은 클래스를 말합니다. 이러한 클래스는 보통 static 메서드들로만 이루어져 있습니다.@UtilityClass 어노테이션을 사용하면 다음과 같은 효과가 있습니다:클래스를 final로 만들어, 상속을 방지합니다.기본 생성자를 private으로 만들어, 인스턴스 생성을 방지합니다.클래스 내의 모든 메서드를 static으로 만듭니다.따라서, @UtilityClass 어노테이션은 유틸리티 클래스를 쉽게 만들 수 있도록 도와줍니다.예를 들어, 다음과 같이 사용할 수 .. Spring Bean (스프링 빈) 이란? # Spring Bean 이란?Spring Bean은 Spring Framework에서 관리하는 객체를 의미합니다. Spring IoC(Inversion of Control) 컨테이너에 의해 인스턴스화, 조립, 관리되는 객체를 말합니다.Spring Bean은 보통 Spring의 설정 메타데이터(XML 파일, Java annotations, Java code 등)에 의해 정의되며, 이 설정 메타데이터는 Bean의 생성 및 서비스 요청에 대한 세부 정보를 제공합니다.Spring Bean은 다음과 같은 특징을 가집니다:Singleton: 기본적으로, Spring은 각 Bean 정의에 대해 하나의 인스턴스만 생성합니다. 이 인스턴스는 Singleton 범위를 가지며, 이는 전체 애플리케이션 컨텍스트에서 공유됩니.. @RequestBody, @ResponseBody, @PathVariable # @RequestBody, @ResponseBody, @PathVariable1. @RequestBodyPOST 및 PUT 방식 사용시 id=MGR&name=management 형태를 사용하지 않고,아래의 JSON 형식으로 요청한다. 클라이언트 → 서버 요청시!{ "department_id":"MGR", "department_name":"management"}- Postman2. @ResponseBody@PathVariable 어노테이션을 통해서 URL 경로에 있는 값을 파라미터로 받아온다. (Postman에서 Parameter Value 입력.)@ResponseBody 어노테이션을 통해서 Get 요청에 대한 응답을 JSON 형태로 반환한다. 서버 → 클라이언트 응답시![ { .. @Transactional # @Transactional 클래스, 메소드에 @Transactional이 선언되면 해당 클래스에 트랜잭션이 적용된 프록시 객체 생성가 생성된다. 프록시 객체는 @Transactional이 포함된 메서드가 호출될 경우, 트랜잭션을 시작하고 Commit or Rollback을 수행을 수행한다. CheckedException or 예외가 없을 때는 Commit을 수행 UncheckedException이 발생하면 Rollback을 수행 - 우선순위는 아래와 같다. 클래스 메소드 > 클래스 > 인터페이스 메소드 > 인터페이스 - 예제 어노테이션 @Transactional(readOnly = true) - Exception @Transactional(rollbackFor = Exception.class) - 끝 - 이전 1 다음