编程语言
首页 > 编程语言> > java – 是否可以在同一个实体类中维护不同的模式

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

作者:互联网

我有两个架构(声明和政策).对于两个架构,我使用相同的Entity类.
我的问题是,声明架构有列城市但政策架构确实有城市列.所以如果我按策略模式使用实体类,我会收到错误.
这只是改变每个模式的Entity类的方法吗?或者是否可以在同一个实体类中维护不同的模式?

我的实体类:

@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();
}

解决方法:

您需要为不同的模式提供两个不同的映射,因此您必须创建两个Java映射类,并使用Table批注对其进行批注,以标记每个特定实体的schema.

标签:java,orm,hibernate,hibernate-mapping,hibernate-criteria
来源: https://codeday.me/bug/20190706/1399281.html