我对缓存有一些疑问。首先是一些先决条件:
// query 1
$data1 = $this->myRepository->findByPid($myPid);
// query 2
$data2 = $this->myRepository->findOneByUid($myUid);
我的问题:
答案 0 :(得分:3)
对于较旧和较新的Typo3版本,行为是不同的。从Typo3 7.x开始,如果您使用默认存储库查询,则始终使用缓存。从数据库中检索数据集后,属性映射器将其映射到域对象,如果该对象已存在于缓存中,则返回该对象。
在Typo3 6.x中,如果您使用->findByUid
选择它并且例如作为控制器参数,则会为同一个uid获取两个不同的对象