延遲加載時,Hibernate 返回一個HibernateProxy對象,而不是實體本身,造成instanceof 不可用。可以用下列方法判斷:

1 Object proxyObj = (從Hibernate 取得延遲加載對象)
2 if (ProxyObj instanceof HibernateProxy) {
3      Object  realEntity= ((HibernateProxy)proxyObj).getHibernateLazyInitializer().getImplementation() ;
4      //對target可以使用instanceof
5      if (realEntity instanceof MyRealEntity.class) {
6     
7     }
8 }

注意:以上代碼尚未經過實際上機測試.
======================================
以上代碼現已測試通過