缓存也会出毛病- -
Party和角色是多对多的关联,Party这边对角色做了缓存:
public class Party {
/**
* @hibernate.set lazy="false" readonly="true" cascade="none" table="tab_UserRole"
* @hibernate.cache usage="read-write"
* @hibernate.collection-key column="colOperatorId"
* @hibernate.collection-many-to-many column="colRoleId" class="com.jbbis.um.entity.Role"
*/
public Set getRoles() {
return roles;
}
...
如果刚刚更新了角色设置,重新取出这个Party实体,调用getRoles()方法取到的还是缓存中的内容。就为这个小毛病,在这debug了90分钟,我苦啊……设置角色时都会update Party实体,并且是在独立的transaction中,为什么缓存的内容还没有清掉呢?真是莫名其妙。