Hibernate如何使用cglib来优化VO反射操作

研究Hibernate源码,对hibernate如何使用cglib优化反射操作感兴趣:

分析结果:
1. 获取resultset后,创建VO类 ,FastClass.create(clazz);
2. 使用 bulkbean创建优化器, net.sf.cglib.beans.BulkBean,是个批量设置属性值的类:

  BulkBean optimizer = BulkBean.create(clazz, getterNames, setterNames, types);

3. 创建VO类实例 :
    Object instance = fastClass.newInstance();

4. 用优化器批量设置VO实例的属性:
   optimizer.setPropertyValues( instance, optimizer.getPropertyValues(instance) );

你可能感兴趣的:(Hibernate,.net)