https://velog.io/@hyeonjoonpark/React-Spring-Boot-MySQL-4
이어서 Repository를 만들어보자

Repository

com.example 폴더 안에 Repository 폴더를 만든다
Reposiroty 패키지 안에 다음과 같은 인터페이스를 만든다

  • UserRepository
  • BoardRepository
  • PopularSearchRepository
  • LikeRepository
  • CommentRepository


관련 어노테이션

@Repository : Repository로 사용하겠다 선언 (의존성 주입)

  • @Component 어노테이션이 포함되어 있음

package com.hyeonjoonpark.board_crud.Repository;

import com.hyeonjoonpark.board_crud.Entity.UserEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface UserRepository extends JpaRepository<UserEntity, String> {

}

UserRepository는 JpaRepository를 상속받는다
<> 안에 첫번째 인자로는 Entity를 받고,
두번째 인자로는 상속받은 Entity (여기서는 UserEntity)의 PK(primary key) 의 자료형을 작성해준다.

package com.hyeonjoonpark.board_crud.Repository;

import com.hyeonjoonpark.board_crud.Entity.BoardEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface BoardRepository extends JpaRepository<BoardEntity, Integer> {
    
}
package com.hyeonjoonpark.board_crud.Repository;

import com.hyeonjoonpark.board_crud.Entity.PopularSearchEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface PopularSearchRepository extends JpaRepository<PopularSearchEntity, String> {
    
}
package com.hyeonjoonpark.board_crud.Repository;

import com.hyeonjoonpark.board_crud.Entity.LikeEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface LikeRepository extends JpaRepository<LikeEntity, Integer> {
    
}
package com.hyeonjoonpark.board_crud.Repository;

import com.hyeonjoonpark.board_crud.Entity.CommentEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface CommentRepository extends JpaRepository<CommentEntity, Integer> {
    
}

이렇게 모든 Repository를 작성해준다


Repository의 역할

  • Entity에 접근하여 데이터베이스에 접근하도록 하는 역할

이제 화면을 하나씩 만들어가면서 기능을 구현해보겠다
6편에서 계속

profile
Backend Developer

0개의 댓글