java - 是否可以在同一个实体类中维护不同的模式

标签 java hibernate orm hibernate-mapping hibernate-criteria

我有两个模式(声明和政策)。对于这两个模式,我都使用相同的实体类。 我的问题是,声明模式有城市列,但政策模式确实有城市列。因此,如果我按策略模式使用实体类,我会收到错误消息。 这是更改每个模式的实体类的唯一方法吗?或者是否可以在同一个实体类中维护不同的模式?

我的实体类:

@Entity
@Table(name = "Table_name")
public class X {

   @Id
   @GeneratedValue(strategy=GenerationType.AUTO)
   @Column(name = "xxx")
   private int xxx;

   @Column(name = "yyy")
   private String yyy;

   @Column(name = "city")
   private String city;      // only claim schema 
 }  

我得到这样的模式,

if(id.startsWith("SW")){
                session = getSWSession();
}
if(id.startsWith("HW")){
                session = getHWSession();
}

最佳答案

对于不同的schema,你需要有两个不同的映射,所以你必须创建两个java映射类,并用Table注释来注释它们,以标记schema。对于每个特定实体。

关于java - 是否可以在同一个实体类中维护不同的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32005520/

相关文章:

java - hibernate : Is it possible to manually add objects to second level cache?

mysql - 在 Hibernate 中持久化循环引用

python - 创建 Pony ORM 实体而不获取相关对象?

mysql - Node.js Sequelize 虚拟列从其他模型中提取值(value)

java - 使用正则表达式匹配模块代码

java - swagger-ui.html 停止出现

java - GUI多窗口

java - 当用户操作可以删除中间的行时,如何处理数据库分页?

java - Hibernate 中层次结构的高效表示

java - JFileChooser 的 FileFilter 不起作用