2
我使用的代碼 Object object = session.load(Class.forName(javaType), objectId);
Hibernate的對象和Java反射
以下行加載懶洋洋地從休眠狀態的對象。如果我打印object.getClass().getSimpleName()
它顯示休眠代理的名稱,而不是我的實現類如預期。
但是如果我再使用這個代理對象上反射如下返回的屬性叫孩子: List children = (List) object.getClass().getMethod("getChildren", new Class[ {}).invoke(object, new Object[]{});
它返回對象的列表,其中object.getClass().getSimpleName()
上的任何對象返回實現類的名稱。爲什麼這些對象不返回代理對象名稱?