我有一个抽象的通用基类,我试图将 spring data jpa 与 hibernate 一起使用来创建一个允许我获取子类的存储库......
如下
@Entity
@Table(name="Vehicle")
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="discriminator")
@DiscriminatorValue("ROOT")
public abstract class AbstractVehicle<
D extends Engine, O extends Chassy>
implements Model<D, O> {
....
...
}
我有两个子类如下:
@Entity
@DiscriminatorValue("TRUCK")
public final class Truck<D extends TruckEngine> extends AbstractVehicle<D, TruckChassy> {
..
..
}
@Entity
@DiscriminatorValue("CAR")
public final class Car<D extends CarEngine> extends AbstractVehicle<D, CarChassy> {
..
..
}
现在我正在尝试使用 Spring Data JPA,根据它的 id 返回一个对象,然后我希望能够做一个实例,并强制转换为正确的类型……这可能吗……我的接口存储库..
@SuppressWarnings("rawtypes")
public interface VehicleFinderRepository extends JpaRepository<AbstractVehicle, String> {
}
}
我得到的只是 id,我知道它有 Vehicle 的基本类型,我想在数据库上进行提取,然后获取类型并在之后进行转换。当我运行它时,我无法加载实体 Vehicle
有人对此有什么想法吗?...