
getCreatedAt() / getUpdatedAt() 메서드가 인식되지 않은 문제유저 생성 기능을 구현하면서 UserService에서 아래 코드를 작성했을 때 에러가 발생했다.
savedUser.getCreatedAt()
savedUser.getUpdatedAt()
처음에는 BaseEntity에 createdAt, updatedAt 필드와 getter를 만들어 두었기 때문에
User 엔티티에서도 당연히 사용할 수 있을 것이라고 생각했다.
하지만 원인은 User 엔티티가 BaseEntity를 상속받고 있지 않았기 때문이었다.
기존 코드는 다음과 같았다.
public class User {
이 상태에서는 User 클래스가 BaseEntity의 필드와 메서드를 물려받지 못하므로
getCreatedAt()과 getUpdatedAt()을 사용할 수 없다.
그래서 클래스 선언부를 아래처럼 수정했다.
public class User extends BaseEntity {
수정 후에는 User 엔티티가 BaseEntity의 공통 필드와 메서드를 상속받게 되었고,
createdAt, updatedAt, getCreatedAt(), getUpdatedAt()을 정상적으로 사용할 수 있었다.
getCreatedAt()이 안 잡힌 이유: User가 BaseEntity를 상속하지 않았기 때문User extends BaseEntity로 수정
하하... 이거이거 갈 길이 멉니다. 멀어요... 주말에도 앉아계셔야겠는데요....??