今天在做底层 开发的过程中,我使用的是ibatis,遇到了一个这样 的问题。
主要过程是实体对象 PlanGroup和Plan存在这一对多的关系,并且双边的关系都需要维护,当时在PlanGroup中有多个Plan,当时我在做resultMap的时候,使用的select属性根据planGroupId来查所关联的Plan,(可能是感觉这样写教方便),在方法测试的时候查询PlanGroup的同时我成功打印出了Plan的id。可是在前台调用需要用到Plan时便出现了异常。当时通过debug知道了是关于延迟加载方面的错误,于是我顺利的想到了我的sql-map-Config.xml中配置了azyLoadingEnabled="true",当我把它的值改为false错误就好了 ,
但是如何不使用延迟加载的话,可能对项目整体的性能方面有影响。于是我只好改用resultMap属性来维护这种关系,这样做的话,必须对PlanGroup和Plan对应的数据库表进行 连接查询。