如何获取hibernate代理类代理的实际对象实例?

在hibernate中,通过sql语句查询带clob字段的记录,查出来的结果集是List<HashMap<String,Object>>类型,在调用jackson的接口转为json字符串的时候,会报异常,为了解决该问题,尝试在转json之前,先将clob字段找出,然后手动转成string。但是在找出clob字段的过程中,发现List<HashMap<String,Object>>中,clob字段的类型尽然不是Clob,而是一种类似$+数字的东东,原因是hibernate使用了自己的实例代理了该字段,获取真实实例的方法如下:

SerializableClobProxy proxy = (SerializableClobProxy)Proxy.getInvocationHandler(字段值);
CLOB c = (CLOB)proxy.getWrappedClob();

 

posted @ 2016-01-27 14:39  程序员一一涤生  阅读(1045)  评论(0编辑  收藏  举报