인프런 커뮤니티 질문&답변
데이터베이스 schema
해결된 질문
작성
·
219
퀴즈
JPA에서 클래스를 엔티티로 매핑하기 위해 `@Entity` 어노테이션을 사용할 때, 해당 클래스가 기본적으로 갖춰야 할 중요한 조건은 무엇일까요?
모든 필드가 public이어야 한다
final 클래스여야 한다
public 또는 protected 기본 생성자가 있어야 한다
static 메소드를 하나 이상 포함해야 한다
답변 1
2
김영한
지식공유자
안녕하세요. ruji716님
저도 열심히 들어주셔서 감사합니다^^
스키마를 동적으로 선택하는 것은 불가능합니다.
대신에 데이터베이스 커넥션부터 둘로 쪼개어서 사용하는 것은 가능합니다.(데이터베이스가 물리적으로 분리되어 있어도 가능)
데이터베이스 커넥션을 a, b 각각 따로 만들고, 엔티티 메니저 팩토리도 a,b용을 각각 따로 만들어서 연결해둡니다. 이렇게 해두고 a용 엔티티 매니저 팩토리와, b용 엔티티 매니터 팩토리가 같은 엔티티를 사용하도록 하면 됩니다.
이렇게 해두면 애플리케이션에서 a스키마로 동작해야 하면 a 엔티티 메니저 팩토리를 사용하면 되고, b스키마로 동작해야 하면 b 엔티티 매니저 팩토리를 사용하면 됩니다.
관련해서 더 자세한 내용은 "spring boot multi datasource jpa"라는 키워드로 검색해보시면 찾으실 수 있을거에요^^
도움이 되셨길 바래요.





