활동/호기심

save() 메서드는 엔티티 상태를 데이터베이스에 반영

ByeongJun 2023. 9. 25. 13:43
반응형
package com.study.board.service;

import com.study.board.entity.Board;
import com.study.board.repository.BoardRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.ui.Model;

import java.util.List;

@Service
public class BoardService {

    @Autowired
    private BoardRepository boardRepository;

    // 글 작성 처리
    public void write(Board board) {

        boardRepository.save(board);
    }
}
package com.study.board.repository;

import com.study.board.entity.Board;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

@Repository
public interface BoardRepository extends JpaRepository<Board, Integer> {
}

 

게시판에서 작성한 글을 처리하는 기능을 구현하다가

save() 메서드에 대해 궁금해졌다.

 

 

 

 

 

save()

 

Spring Data JPA에서 엔터티를 데이터베이스에 저장(or 업데이트) 시 사용하는 메서드로써, 

CrudRepository, JpaRepository 같은 Spring Data JPA의 Repository Interface에 정의되어 있다. 

 

 

 

예시에서 JpaRepository를 상속한 리포지터리의 인터페이스를 정의한 경우, 

save() 메서드를 사용해 게시글 엔티티를 저장할 수 있다. 

 

 

 

이렇게 하면 새로운 게시글 엔티티가 데이터베이스에 저장된다. 

이미 존재하는 게시글의 경우 save()를 호출하면 해당 게시글이 업데이트 된다.

반응형