点击右边红色标题查看本文完整版:Hibernate的异常net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of
数据库表:T_users ,T_groups ,T_modules 
? 对应的XML:Tuser.hbm.xml,Tgroup.hbm.xml,Tmodule.hbm.xml 
? 关系:user<—>group 是一对一的关系,group<—>module是一对多的关系 
? 即,一个用户从属于一个群组,一个群组下包含多个功能模块 
? 
? Tuser.hbm.xml的部分配置: 
? 
? <!-- Associations --> 
? <one-to-one 
? name="group" 
? class="com.wzr.spring.bean.Group" 
? cascade="none" 
? outer-join="auto" 
? constrained="false" 
? /> 
? 
? Tgroup.hbm.xml的部分配置: 
? 
? <!-- Associations --> 
? <set 
? name="modules" 
? table="t_modules" 
? lazy="false" 
? inverse="true" 
? cascade="all" 
? sort="unshorted" 
? order-by="module_order asc" 
? > 
? <key 
? column="group_id" 
? /> 
? <one-to-many 
? class="com.wzr.spring.bean.Module"/> 
? </set> 
? 
? Tmodule.hbm.xml的部分配置: 
? 
? <!-- Associations --> 
? <many-to-one 
? name="group" 
? class="com.wzr.spring.bean.Group" 
? cascade="none" 
? outer-join="auto" 
? update="true" 
? insert="true" 
? access="property" 
? column="group_id" 
? not-null="true" 
? /> 
? 
? 使用Middlegen生成POJO,后在Junit中的测试代码如下: 
? 
? public void testInsert()throws Exception{ 
? Transaction tx=null; 
? String hql="from Group where group_id='G000000001'"; 
? try{ 
? tx = session.beginTransaction(); 
? List groupList=session.find(hql); 
? Group group=(Group)groupList.get(0); 
? Module module=new Module();