是否可以根据字段的值加载不同的类?对于这些类中的每一个,数据库中都会有相应的行,并且可以通过“type”字段来识别。他们都将共享相同的界面(申请)。
答案 0 :(得分:2)
我认为你可以很容易地用JPA实现这个目标。假设你有一个"位置"表,您可以为不同类型的位置(例如StoreLocation和CustomerLocation)设置不同的行。然后我们可以在下面的JPA实体中对此进行建模。
$string = "¯\\\_(ツ)\_/¯";
$result = preg_replace('/(?<!\\\\)_/', ' ', $string);
$result = preg_replace('/\\\\(\\\\|_)/', '$1', $result);
echo $result;
// => Actual underscore looks like _
然后我们可以有其他更具体的表
@Entity
@DiscriminatorColumn(name = "name of column you need to filter with")
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
public abstract class LocationEntity {
}
和另一个
@Entity
@DiscriminatorValue("STORE") // set the value of the column for store location rows
public class StoreLocationEntity extends LocationEntity {
}
希望这个例子可以帮助你开始。