저는 2 데이터베이스가 있습니다. 중 하나가 설정하고 그것은 작동합니다. 후에 추가 두 번째 db 나는 다음과 같은 오류 entityManageFactory 오류가 있습니다. 키마 검증:다[hibernate_sequence].
Db 스키마 다음과 같습니다:db 스키마 스크린샷
나는 두 개의 클래스 두 테이블:
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Entity(name = "nightly_rate_amounts")
@Table(name = "nightly_rate_amounts")
public class BookedNightlyRate {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "bnr_meta_id")
private Long id;
@Column(name = "unit_uuid")
private UUID unitUuid;
private LocalDate firstLiveDate;
private LocalDate date;
private BigDecimal amount;
@Column(name = "currency_code")
private String currencyCode;
public ImmutableTriple<UUID, LocalDate, String> toUnitDateCurrencyKey() {
return new ImmutableTriple<>(unitUuid, date, currencyCode);
}
public ImmutablePair<UUID, String> toUnitCurrencyKey() {
return new ImmutablePair<>(unitUuid, currencyCode);
}
}
고:
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Entity(name = "unit_attributes")
@Table(name = "unit_attributes")
public class BookedUnitAttributes {
@Id
@Column(name = "unit_uuid")
private UUID unitUuid;
@Column(name = "first_date_available")
private LocalDate firstLiveDate;
}
과 파일을 저장소:
public interface BookedNightlyRatesDao extends CrudRepository<BookedNightlyRate, Long> {
@Query(value = "SELECT DISTINCT bnr.unit_uuid as unitUuid, bnr.date, bnr.amount, bnr.currency_code as currencyCode " +
"FROM nightly_rate_amounts AS bnr " +
"WHERE bnr.unit_uuid IN (<unitUuids>) AND (bnr.date BETWEEN :fromDate AND :toDate)", nativeQuery = true)
List<BookedNightlyRate> findBookedNightlyRates(@Param("unitUuids") List<String> unitUuids, @Param("fromDate") LocalDate fromDate, @Param("toDate") LocalDate toDate);
@Query(value = "SELECT DISTINCT opb.unit_uuid as unitUuid, opb.date, opb.amount, opb.currency_code as currencyCode " +
"FROM opb_nightly_rate_amounts AS opb " +
"JOIN opb_sync_enabled_for_unit AS sync ON opb.unit_uuid = sync.unit_uuid WHERE sync.enabled = 1 AND opb.is_active = 1 " +
"AND sync.unit_uuid IN (<unitUuids>) AND (opb.date BETWEEN :fromDate AND :toDate)", nativeQuery = true)
List<BookedNightlyRate> findOPBRates(@Param("unitUuids") List<String> unitUuids, @Param("fromDate") LocalDate fromDate, @Param("toDate") LocalDate toDate);
}
두 번째 인터페이스::
public interface BookedUnitAttributesDao extends CrudRepository<BookedUnitAttributes, UUID> {
@Query(value = "SELECT ua.unit_uuid as unitUuid, ua.first_date_available as firstLiveDate " +
"FROM unit_attributes AS ua " +
"WHERE ua.unit_uuid IN (<unitUuids>)", nativeQuery = true)
List<BookedUnitAttributes> findUnitAttributes(@Param("unitUuids") List<String> unitUuids);
}
나는 다시 쓰기 내에서 db jdbi 을 jpa. 그래서 데이터 수업이 없고 주석하고 나 refactor 내 모델 파일에 대한 쿼리에서 저장소의 파일이 있습니다.