annotation(6)
-
@Async
@Async는 Spring Framework에서 비동기적인 메서드 호출을 가능하게 하는 어노테이션 중 하나입니다. @Async 어노테이션을 사용하면, 메서드 호출 시 Spring은 별도의 스레드를 생성하여 해당 메서드를 비동기적으로 실행합니다. 이를 통해, 요청-응답 시간을 단축하거나, 복잡한 처리 작업을 비동기적으로 처리할 수 있습니다. @Async 어노테이션을 사용하기 위해서는 다음과 같은 조건을 만족해야 합니다. @EnableAsync 어노테이션이 지정된 클래스가 존재해야 합니다. 비동기적으로 실행될 메서드는 public 메서드로 지정되어야 합니다. 메서드는 void 또는 Future를 반환해야 합니다. 아래는 @Async 어노테이션을 사용하여 비동기적으로 메서드를 실행하는 예시 코드입니다. @Se..
2023.02.24 -
@Value
@Value는 Spring Framework에서 프로퍼티 값을 주입하기 위해 사용되는 어노테이션 중 하나입니다. Spring에서는 application.properties 또는 application.yml 파일에 설정 값을 정의하여, 애플리케이션에서 사용할 수 있습니다. @Value 어노테이션을 사용하면, 이러한 설정 값을 손쉽게 주입받을 수 있습니다. @Value 어노테이션은 주입받을 프로퍼티의 이름을 지정하며, ${} 또는 #{}을 사용하여 프로퍼티 값을 참조할 수 있습니다. 아래는 @Value 어노테이션을 사용하여 프로퍼티 값을 주입받는 예시 코드입니다. @Service public class UserServiceImpl implements UserService { @Value("${app.user..
2023.02.24 -
@Transactional
@Transactional은 Spring Framework에서 트랜잭션 처리를 위해 사용되는 어노테이션 중 하나입니다. @Transactional 어노테이션을 사용하면, 해당 메서드에서 수행되는 모든 데이터베이스 작업이 하나의 트랜잭션으로 묶이게 됩니다. 이러한 트랜잭션 처리는 데이터베이스의 일관성과 무결성을 유지하기 위해 중요합니다. 아래는 @Transactional 어노테이션을 사용하여 메서드에서 트랜잭션 처리를 수행하는 예시 코드입니다. @Service public class UserServiceImpl implements UserService { @Autowired private UserRepository userRepository; @Transactional public void createUs..
2023.02.24 -
@Data
@Data는 Lombok 라이브러리에서 제공하는 어노테이션 중 하나로, Getter, Setter, equals(), hashCode(), toString() 등의 메서드를 자동으로 생성해주는 기능을 제공합니다. 아래는 @Data 어노테이션을 사용한 예시 코드입니다. @Data public class User { private Long id; private String name; private int age; } 위 코드에서는 @Data 어노테이션을 사용하여 User 클래스에 Getter, Setter, equals(), hashCode(), toString() 등의 메서드를 자동으로 생성하도록 설정하고 있습니다. User 클래스에서는 id, name, age 필드가 선언되어 있습니다. 이렇게 생성된 G..
2023.02.24 -
@RequiredArgsConstructor
@RequiredArgsConstructor 어노테이션은 Lombok 라이브러리에서 제공하는 어노테이션 중 하나로, 생성자를 자동으로 생성해주는 기능을 제공합니다. @RequiredArgsConstructor 어노테이션을 사용하면 클래스에 선언된 모든 final 필드를 가지고 생성자를 자동으로 생성해줍니다. @RequiredArgsConstructor 어노테이션을 사용하면 생성자를 직접 작성하지 않아도 되므로, 코드를 간결하게 유지할 수 있습니다. 또한, 필드의 개수가 많아지는 경우 생성자 작성이 번거로워질 수 있는데, @RequiredArgsConstructor 어노테이션을 사용하면 이러한 불편함을 줄일 수 있습니다. 아래는 @RequiredArgsConstructor 어노테이션을 사용한 예시 코드입니..
2023.02.24 -
@PreAuthorize
@PreAuthorize 어노테이션은 Spring Security에서 사용되며, 메서드 또는 클래스 단위의 인가(authorization) 설정을 지정하는 데 사용됩니다. @PreAuthorize 어노테이션은 해당 메서드 또는 클래스에 접근하기 전에 특정 권한을 가진 사용자만 접근할 수 있도록 제한합니다. @PreAuthorize 어노테이션은 SpEL(Spring Expression Language)을 사용하여 권한 검사를 수행합니다. SpEL은 Java 기반의 표현 언어로, Spring Security에서는 메서드 파라미터, 메서드 반환 값 등을 기반으로 권한 검사를 수행할 수 있도록 지원합니다. 아래는 @PreAuthorize 어노테이션을 사용한 예시 코드입니다. @PreAuthorize("hasRo..
2023.02.24