작성
·
274
1
안녕하세요! 질 좋은 강의 잘 보고 있습니다!
해당 강의를 듣기전에는 BaseTimeEntity를 추상클래스로 생성해 필드값으로 createTime, modifiedTime 등을 생성하고, 사용하고 싶은 클래스(ex. Member, Post ) 에 extends 해서 사용하는 방법으로 알고 있었습니다.
강의에서는 AuditorAware 인터페이스를 상속받아 구현하고 있는데, 위와 같은 방법이랑 차이점이 있을까요??
차이점이 있다면, 장단점이 어떤게 있는지 궁금합니다.
답변 1
2
안녕하세요 윤종님! AuditorAware를 이용하면 생성자, 수정자를 자동으로 입력해준다는 장점이 있습니다. 예를 들어서 현재 로그인한 회원의 아이디를 데이터 수정시 생성자와 수정자로 넣어줄수도있고, api 같은 경우에 강의에서는 해당 데이터가 어떤 경로에서 수정됐는지 볼 수 있도록 api url을 지정해주었습니다.
실무에가시면 보통 저 생성자와 수정자도 테이블에 거의 다 넣을텐데요, 만약 배포가 잘못되거나 로직이 잘못됐을 때 이 데이터가 누구에의해서 어느 경로에 의해서 바꼈는지 추적이 용이하다는 장점이있습니다.
예를 들어서 쇼핑몰에서 상품을 수정하는 로직이 여러군데일 때 이 경로에서 잘못되었구나 그런것들을 좀 더 쉽게 인지할 수 있다는 장점이 있습니다.