为JPA创建通用实体模型



我试图用JPA多表建模,其中所有表都具有相同的结构,但名称不同。] .

  • cAfiliadoPMX
  • cAfiliadoPMQ
  • cAfiliadoQAW
  • cAfiliadoBMX

问题是有数百个表,将来可能会更多。

所以我想知道是否有可能做一个通用的Pojo,可以从任何指定名称的表中读取。


@Entity
@Table(name = "afiliado"{PREFIX})
@Data
public class Afiliado implements Serializable {

@Id
@Column(name = "clcuenta")
private int clAccount;

@Column(name="prefijo")
private String prefix="";

}

可以使用参数或者类似的东西

我已经解决了使用EntityManager和Native Query

这是我已经做过的

StringBuilder querySearch = new StringBuilder("SELECT * FROM cafiliado").append(前缀).append(")

SELECT * FROM cafiliado[PREFIX])

这是不可能的,但是您可以使用继承来避免重复。

@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
@Data
public abstract class Afiliado implements Serializable {
@Id
@Column(name = "clcuenta")
private int clAccount;

@Column(name="prefijo")
private String prefix="";

}
@Entity
@Table(name = "afiliadoPMX")
public class AfiliadoPMX extends Afiliado {}

相关内容

  • 没有找到相关文章

最新更新