열심히 유튜브 강의를 보면서 IntelliJ에서 Spring Boot 프로젝트를 진행하고 있었다.
Study_record라는 Entity를 생성하고
package com.example.springboot_ex.entity;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import lombok.*;
import java.time.LocalDateTime;
@Data
@Entity
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Study_record {
@Id
private int key_id;
private String study_day;
private String contents;
private LocalDateTime reg_day;
}
레포지터리를 생성한 다음
package com.example.springboot_ex.repository;
import com.example.springboot_ex.entity.Study_record;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface StudyRecordRepo extends JpaRepository<Study_record, Integer> {
}
간단하게 테스트하는 메소드를 작성하는데
package com.example.springboot_ex.repository;
import com.example.springboot_ex.entity.Study_record;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
@SpringBootTest
class StudyRecordRepoTest {
@Autowired
StudyRecordRepo repo;
public void testSelectAll() {
List<Study_record> list = repo.findAll();
for (Study_record record : list) {
System.out.println(record.getKey_id());
}
}
}
유튜브에서는 자동으로 Get 메소드가 생성되어 있는데 나는 왜 없다고 에러가 나지..?
혹시나 내가 놓친 부분이 있는지 강의도 다시 돌려보고 구글링도 열심히 해봤다.
열심히 구글링하며 삽질을 하던 중...
내가 생성한 Entity의 어노테이션을 살펴보던 중 @Data가 Getter와 Setter를 직접 구현하지 않아도 사용할 수 있게 해주는 어노테이션이라는 걸 알게 되었다.
그리고 발견한 하나의 해결책!!
Lombok 플러그인을 설치해보라고?
바로 plugin에서 Lombok을 검색해서 설치하고 적용해줬다.
이렇게 간단하게 해결..ㅎㅎ