2023. 2. 24. 15:51ㆍ@Annotaion Book
@Transactional은 Spring Framework에서 트랜잭션 처리를 위해 사용되는 어노테이션 중 하나입니다.
@Transactional 어노테이션을 사용하면, 해당 메서드에서 수행되는 모든 데이터베이스 작업이 하나의 트랜잭션으로 묶이게 됩니다. 이러한 트랜잭션 처리는 데이터베이스의 일관성과 무결성을 유지하기 위해 중요합니다.
아래는 @Transactional 어노테이션을 사용하여 메서드에서 트랜잭션 처리를 수행하는 예시 코드입니다.
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserRepository userRepository;
@Transactional
public void createUser(User user) {
userRepository.save(user);
}
}
위 코드에서는 @Transactional 어노테이션을 사용하여 createUser() 메서드에서 트랜잭션 처리를 수행하고 있습니다. createUser() 메서드에서는 userRepository.save() 메서드를 호출하여 데이터베이스에 User 객체를 저장하고 있습니다. 이 메서드는 @Transactional 어노테이션으로 묶여 있기 때문에, userRepository.save() 메서드의 실행 결과가 데이터베이스에 반영되지 않으면, 이전에 수행된 모든 데이터베이스 작업도 롤백됩니다.
@Transactional 어노테이션은 메서드 레벨과 클래스 레벨에서 모두 사용할 수 있습니다. 클래스 레벨에서 @Transactional 어노테이션을 사용하면, 해당 클래스의 모든 메서드에서 트랜잭션 처리가 수행됩니다. 또한, @Transactional 어노테이션을 사용하여 트랜잭션 처리를 수행하려면, Spring의 트랜잭션 매니저가 설정되어 있어야 합니다. 이를 위해 @EnableTransactionManagement 어노테이션을 사용하여 트랜잭션 매니저를 활성화할 수 있습니다.
'@Annotaion Book' 카테고리의 다른 글
@Repository (0) | 2023.02.24 |
---|---|
@ResponseBody (0) | 2023.02.24 |
@Service (0) | 2023.02.24 |
@Controller (0) | 2023.02.24 |
@Component (0) | 2023.02.24 |