2
我有一些oracle表像table1,表2,表n具有相同的结构。 如果我在运行应用程序之前知道我有多少表,我可以将一些<class>
标记与相同的类名称,但不同的表名称和相关的实体名称(复制属性标记映射)。 但是我不知道编译时的所有表名;当应用程序运行时,它知道我有多少个表:是否可以在查询时设置表名? 我所有的表都像前缀(表)加上后缀(1,2,3,n),但我知道运行时的n极限。 我必须逐个查询所有表来填充地图。休眠映射不同的表与动态名称到相同的java类
下面的例子我Bucket.hbm.xml
我不知道,我的解释是明确的:
我有这个Bucket.hbm.xml
<hibernate-mapping>
<class name="com.Bucket" table="BUCKETTABLE1" entity-name="Buckettable1">
<cache usage="read-only"/>
<id name="id" type="long">
<column name="ID" />
<generator class="assigned" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property>
<property name="value" type="java.lang.String">
<column name="VALUE" />
</property>
</class>
<class name="com.Bucket" table="BUCKETTABLE2" entity-name="Buckettable2">
<cache usage="read-only"/>
<id name="id" type="long">
<column name="ID" />
<generator class="assigned" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property>
<property name="value" type="java.lang.String">
<column name="VALUE" />
</property>
</class>
<class name="com.Bucket" table="BUCKETTABLE3" entity-name="Buckettable3">
<cache usage="read-only"/>
<id name="id" type="long">
<column name="ID" />
<generator class="assigned" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property>
<property name="value" type="java.lang.String">
<column name="VALUE" />
</property>
</class>
</hibernate-mapping>
我想为了避免这种重复,我不想硬编码处理的表的数量。