Посмотрите, отображается ли поле - PullRequest
0 голосов
/ 23 декабря 2010

Можно ли определить, отображено ли определенное поле данного класса?

EG

У меня есть объект;

MyObject {
   private MyOtherObject other
}

И вфайл сопоставления;

<many-to-one name="other" class="com.mypackage.MyOtherObject" lazy="false" />

Теперь можно ли определить в java, сопоставлены ли другие?Я знаю, что могу создать статический класс, содержащий сопоставленные поля и т. Д. Но я бы лучше обнаружил его на лету.Это возможно?

Ответы [ 2 ]

1 голос
/ 23 декабря 2010

Если вы просто хотите посмотреть, сопоставлен ли MyOtherObject, вы можете попытаться получить ClassMetadata из SessionFactory для этого класса.Если он нулевой, он не отображается:

s.getSessionFactory().getClassMetadata(Bar.class);
0 голосов
/ 23 декабря 2010

используйте аннотации вместо xml и получайте аннотации на лету, используя отражение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...