0
Я использую весной JpaRepository
и хочу обеспечить общий интерфейс с родовыми полученными запросами SQL следующим образом, используя el
выражения:Динамическое имя объекта в JpaRepository?
public interface BaseRepo <B> extends CrudRepository<B, Long> {
@Query("SELECT b FROM #{#entityName} b)
List<B> findAllB();
}
@Entity
class Booking {} //results in "booking"
Это прекрасно работает! Но что, если желаемый объект содержит символ подчеркивания? Как определить стратегию того, как выражения el преобразуют имя объекта?
@Entity
@Table(name = "booking_entity")
class BookingEntity {} //results in "bookingentity", missing underscore!
'@ Query' должен находиться в' JPQL', который * должен * использовать 'BookingEntity', а не' booking_entity'. '@ Table' используется (например, hibernate) для сопоставления JPQL с фактическим SQL-запросом. – beerbajay