日期:2014-05-20  浏览次数:20675 次

oracle下,hibernate如何让实体类与某一表空间下的一个表建立对应关系?
实体类名com.js.hibernate.User
表名T_User,所属表空间MyTables

配置文件如下,该怎么改呢?
<hibernate-mapping 
package="org.hibernate.test.interceptor">

<class name="com.js.hibernate.User" table="T_User">
<id name="id" column="id">
</id>
<property name="name" column="username"/>
<property name="password" column="userpassword"/>

</class>

</hibernate-mapping>

------解决方案--------------------
这个配置应该和Oracle表空间没关系
你只要在hibernate.cfg.xml中配置好连接数据库相关信息就可以了。
<property name="connection.username">SMF</property>
<property name="connection.password">SMF</property>
注意在创建表时,先创建表空间,
然后为用户SMF分配默认表空间(如SMF),然后用该用户连接数据库,创建的表自然都在该表空间(SMF)下.
进行实体与表映射时,不需要理会表空间的问题。
例如:
--创建表空间
CREATE TABLESPACE SMF
datafile 'F:\oracle\Tazi\oradata\orcl\SMF01.dbf' size 100M
default storage(initial 10M
next 10M
minextents 1
maxextents 10
pctincrease 20)
Online;
--创建用户及授权
CREATE USER SMF IDENTIFIED BY SMF
DEFAULT TABLESPACE SMF
TEMPORARY TABLESPACE TEMP;
GRANT CONNECT,RESOURCE TO SMF;