Hibernate:覆盖persistence.xml中的hibernate.default_schema属性

Vic*_*cky 4 hibernate jpa

我在persistence.xml中声明了我的默认模式:

<property name="hibernate.default_schema" value="MYSCHEMA" />
Run Code Online (Sandbox Code Playgroud)

但是,现在我想从CURRSCHEMA访问一个表,该表位于同一个数据库中.

实体在CURRSCHEMA中创建为Curreny表的货币.

但运行以下查询会尝试访问MYSCHEMA.Currency,从而导致错误.

// here will go the code to fetch currency
String currencySql = "select C.pk.currCode from Currency C where C.pk.idCode = :idCode";
Query currencyQuery = this.em.createQuery(currencySql);
currencyQuery.setParameter("idCode", "CCY");
Run Code Online (Sandbox Code Playgroud)

我的实体正在使用注释:

@Entity
@Table(name="CURRENCY")
public class Currency implements Serializable {
Run Code Online (Sandbox Code Playgroud)

将@Table(name ="CURRENCY")更改为@Table(name ="CURRSCHEMA.CURRENCY")不起作用.

怎么去这个?

axt*_*avt 10

你试过@Table(schema = "CURRSCHEMA", name = "CURRENCY")吗?