JPA实体,它使用join作为用户名但透明地使用整数id

时间:2012-03-01 23:24:57

标签: database hibernate jpa jpa-2.0 entity-relationship

假设我有一个存储用户名的实体类:

class Profile {
   private String userName;
   ...
}

然后在数据库中我有两个表:

--- USERS ---
-> username (varchar)
-> uid (int)

--- PROFILES ---
-> uid

USERS和PROFILES表之间的一对一关系加入了uid。我希望我的Profile实体类具有PROFILES表的所有字段,但是替换了类中用户名的uid。我只想使用uid进行连接并节省数据库中的空间。注意我使用Spring的HibernateTemplate()来执行我创建的命名查询。

有没有办法可以使用JPA将另一个表的userName字段映射到“个人档案”实体?当我保存一个Profile实体时,它怎么知道它只是一个连接的字段?

1 个答案:

答案 0 :(得分:0)

我相信你可以用@SecondaryTable注释做到这一点。

我认为你必须在实体类的字段中有uid,但我想这不会有问题。