학습 일지130 @Tracsactional 없이 save()가 동작한다? 개요최근 코드리뷰를 하게 되던 중, 비즈니스 로직에 @Transactional 어노테이션이 누락되어 있는 코드를 보게 되었습니다. 저는 매번 Service를 구현할 때 외부에서 호출하는 public 메인 비즈니스 로직에 아래와 같이 습관처럼 @Transactional을 명시하고 사용했었습니다.쓰기용 SQL 질의인 Insert, Delete, Update를 하나라도 포함한다면 @Transactional 명시한다.조회용 SQL인 Select만 수행하는 메서드에는 @Transactional(readOnly=true)를 명시한다. 위와 같이 습관처럼 @Transactional을 사용하다 보니, 트랜잭션이 명시되지 않은 경우 save() 메서드를 호출했을 때 데이터가 왜 저장되는지, 읽기 전용 트랜잭션에서 sav.. 2024. 8. 24. 7월 IT 연합 채용 세미나 행사에 다녀왔어요. 7월 26일 마루180에서 진행된 IT 연합 채용 세미나에 다녀왔습니다! 이번에 참가한 채용 세미나는 주니어보다는 시니어 개발자를 위한 채용 세미나 였습니다. 주니어를 위한 채용 세미나였다면 더 좋았겠지만, 당장 취업을 위해 참여하기보다 많은 인하우스 기업에서 어떤 인재상을 원하는지,또 오프라인으로 여러 기업의 소개를 직접 직접 듣고 싶어 참가하게 되었습니다ㅎ 행사장에 조금 일찍 도착했는데 샌드위치와 음료수가 준비되어 있었습니다! 약 100명 정도의 개발 직군 분들이 계셔서 생각보다 사람이 많아 당황했던 기억이 납니다ㅎㅎ 기업 발표행사는 약 3시간 정도 진행됐고 10분 정도의 간단한 오프닝 후 기업 발표가 시작됐습니다. 기업 발표는 약 1시간 30분 정도 진행되었는데, 평소 관심을 갖고 있던 기업들.. 2024. 8. 11. 6월 인프런 퇴근길 밋업 : [사이드 프로젝트] 행사에 다녀왔어요. 6월 인프랩에서 "성공적인 사이드 프로젝트를 위한 팀 빌딩과 문제 해결 가이드"라는 주제로 퇴근길 밋업이 진행됐습니다! [지금 무료] 판교 퇴근길 밋업 with 인프런 #04 사이드 프로젝트 | 인프런 - 인프런인프런 | , [사진] 옆자리 동료와 함께 성장하는 시간🍀 판교 퇴근길 밋업 with 인프런 🍀 판교 퇴근길 밋업 #04 사이드 프로젝트 안녕하세요, 인프런 입니다. 6월 퇴근길 밋업에서는 테오의 스www.inflearn.com 매번 신청했었는데 불합격해서 기대는 안했지만...! 이번에는 운 좋게 참가자로 선정됐습니다ㅎㅎ 오피스 방문 및 접수퇴근길 밋업은 인프랩 오피스에서 진행됐는데, 인프런으로 개발 강의를 진절머리 나게 들었던지라 인프랩 사무실에 간다는 것 자체가 신선했습니다. .. 2024. 8. 10. @TransactionEventListener의 phase 옵션을 주의해서 사용하자 스프링에서 이벤트 리스너를 사용한다면 보통 ApplicationEventPublisher 를 통해 이벤트를 발생시키고, @TransactionEventListener가 적용된 이벤트 리스너에서 이 이벤트를 받아 처리합니다. 이때, 이벤트를 발생시킨 트랜잭션의 상태(단계)에 따라 이벤트 리스너가 동작하는 시점을 조절하게 되는데이를 조절하는 옵션이 @TransactionEventListener의 phase 옵션 입니다. 이벤트 리스너를 사용할 때 phase 옵션을 잘 알고 사용하지 않는다면 예상하지 못한 문제가 발생할 수 있습니다. @TransactionEventListener의 phase 옵션@TransactionEventListener의 phase옵션은 4가지로 구성되어 있으며, 따로 설정하지 않는다면 .. 2024. 8. 6. 이전 1 2 3 4 5 ··· 33 다음