在这次项目中偶尔会遇到“identifier of an instance of”这个错误,一开始还以为是没进行clear()操作,可是仔细排查了一遍后发现居然是因为flush()引起的这个错误。因为在进行数据库的写操作时,涉及到parent也就是上级分类属性。
无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Session缓存。
使用flush()可以强制对数据进行内存到数据库的同步
在这次项目中偶尔会遇到“identifier of an instance of”这个错误,一开始还以为是没进行clear()操作,可是仔细排查了一遍后发现居然是因为flush()引起的这个错误。因为在进行数据库的写操作时,涉及到parent也就是上级分类属性。
无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Session缓存。
使用flush()可以强制对数据进行内存到数据库的同步