본문 바로가기
반응형

스프링34

[스프링] 트랜잭션과 스프링의 @Transactional 스프링에서 데이터베이스와 관련된 처리를 하는 작업을 진행하다 보면 @Transactional 어노테이션을 사용하게 된다. 한번 알아보도록 하자. 트랜잭션(transaction)이란? "Transaction" 는 사전적 의미로 "거래", "매매", "처리(과정)" 이라는 의미를 가지고 있다 (네이버 사전). 일반적인 "거래"를 생각해보면 내가 무언가를 얻기 위해서는 무언갈 주어야 한다. 예를 들어, 사과 하나를 사기 위해서는 일정 금액의 돈을 지불해야 한다. 돈은 지불하지 않은 상태에서 사과만 획득하고 거래를 마칠 수는 없다. A 가 돈을 지불하고, B 는 그 돈을 받고 A 에게 사과를 건내 준다 까지 성공적으로 완료되어야 "거래"가 성사된다. 데이터베이스에서도 트랜잭션은 데이터베이스와 관련된 하나의 논리.. 2023. 2. 2.
[스프링] @NotEmpty, @NotBlank, @NotNull 비교하기 API 를 작성하다보면 요청을 받는 DTO 에 대한 유효성 검증을 해야한다. 값이 없어도 되는 필드가 있는 반면, 값이 꼭 필요한 필드가 있다. nullable 에 대한 유효성 검증은 다양한 방법으로 할 수 있는데, Controller 레벨에서 조건문을 활용할 수도 있고 Objects 또는 Collections 의 유틸 함수를 활용할 수도 있다. @NotEmpty, @NotBlank, @NotNull 라는 표준 Validation 을 활용할 수도 있는데, 유사하지만 다른 역할을 하는 3개의 Validation 에 대해 정리해보고자 한다. Bean Validation Bean Validation 자파 기술 표준으로 유효성 검증 어노테이션과 인터페이스의 모음이다. 이 인터페이스 모음을 구현하여 우리가 자주 .. 2023. 2. 2.
반응형