Hibernate工具在数据库中使用同义词

时间:2014-06-25 03:23:53

标签: hibernate hibernate-tools

hibernate工具是否能够连接到数据库中的同义词表?我的DBA问我这个问题。

3 个答案:

答案 0 :(得分:5)

是的,只需启用该属性' hibernate.synonyms'在你的persistence.xml中

    <properties>
        <property name="hibernate.synonyms" value="true"/>

    </properties>

使用

注释您的实体类
    @Entity
    @Table(name = "<repalce with synonym name>")

答案 1 :(得分:0)

找到一个解决方案,只是避免在cfg文件中提及架构..我的文件..

  <session-factory>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
    <property name="hibernate.connection.url">jdbc:oracle:thin:@//localhost:60003/IHR1D</property>
    <property name="hibernate.connection.username">admin</property>
<property name="hibernate.connection.password">admin</property>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property name="hibernate.current_session_context_class">thread</property>
<property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property><property name="hibernate.default_catalog"/></session-factory>

答案 2 :(得分:0)

您可以从同义词表创建视图;

CREATE VIEW MY_VIEW AS ( SELECT * FROM MY_TABLE@SYNONYM)

然后您可以使用该VIEW名称创建实体:

@Entity
@Table(name = "MY_VIEW")