从我的研究来看,似乎不太可能实现,但这是我的用例。
我有一个名为user的表,其中包含一个地址id。
我想将UserReference和User类映射到这个表,其中UserReference不包含Address对象(以节省SQL连接时间),而User类包含Address对象(以防需要)。
我不能使用子类,因为它需要一个连接表,而且我也不能只定义两个单独的类,因为get()似乎会返回每一行的两倍(一个是User,一个是UserReference)。
有人知道我该如何处理吗?
我想我应该努力更好地解释一下自己。
我想要同时映射UserReference和User,这样我就可以在只需要基本信息时查询UserReference,而在需要完整对象时查询User。
我知道可以将Address设置为延迟加载,但是我的系统是两层结构,一旦通过这些层,所有对象都会被取消代理。
编辑:
也许我的问题表达得太含糊了,但根据回答来看,似乎很难实现我想要的。不管怎样,还是谢谢大家。
我有一个名为user的表,其中包含一个地址id。
我想将UserReference和User类映射到这个表,其中UserReference不包含Address对象(以节省SQL连接时间),而User类包含Address对象(以防需要)。
我不能使用子类,因为它需要一个连接表,而且我也不能只定义两个单独的类,因为get()似乎会返回每一行的两倍(一个是User,一个是UserReference)。
有人知道我该如何处理吗?
我想我应该努力更好地解释一下自己。
public class UserReference {
private int id;
private String name;
}
public class User extends UserReference {
private Address;
}
我想要同时映射UserReference和User,这样我就可以在只需要基本信息时查询UserReference,而在需要完整对象时查询User。
我知道可以将Address设置为延迟加载,但是我的系统是两层结构,一旦通过这些层,所有对象都会被取消代理。
编辑:
也许我的问题表达得太含糊了,但根据回答来看,似乎很难实现我想要的。不管怎样,还是谢谢大家。