[英]Many to One in hibernate, get column type
In Hibernate when I got simple Pojo, for example User: 在Hibernate中,当我得到简单的Pojo时,例如User:
private class User{
private String name;
}
When I want to get property of the "name", a simply use: 当我想获取“名称”的属性时,只需使用:
sessionFactory.getClassMetadata(User.class).getPropertyType("name")
But when I add a class Grou to my User: 但是,当我向用户添加Grou类时:
private class User{
private String name;
private Group group;
}
My previous code : 我以前的代码:
sessionFactory.getClassMetadata(User.class).getPropertyType("group.name")
doesn't work. 不起作用。 Any way to solve it?
有什么办法解决吗?
Split your query group.name
into the corresponding parts group
and name
. 将查询
group.name
拆分为相应的部件group
和name
。
Class<?> currentClass = User.class;
for(String field: "group.name".split("\\Q.\\E")) {
currentClass = sessionFactory.getClassMetadata(currentClass).getPropertyType(field);
}
for group.name
to work , you have to specify the mapping for Group class also. 为了使
group.name
工作,您还必须为Group类指定映射。 If you have already specified a mapping and still its not working then please share the mapping file here. 如果您已经指定了一个映射,仍然它不是那么工作,请在这里分享的映射文件。 Issue might be in the mapping only.
问题可能仅在映射中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.