0
在session.delete之后,高速缓存中实体上的集合不刷新。二级高速缓存和session.save
这是我的关系:
- 模型可以有0到N个用于特定用户的书签。
- 模型的primaky键是一个id
- 书签的主键是对(idModele,loginUser)
的问题是,如果我保存的模型1与一个书签。他们被放在二级缓存中。如果我在一个事务中使用bookmarkDao.delete来删除这个书签,即使在新的事务中它仍然在modele.getBookmarks()中。缓存似乎没有被更新。
这里是我的HBM文件:
型号
<class name="Modele" table="modele" batch-size="10">
<cache usage="read-write"/>
<id name="id" column="id_composant" unsaved-value="0">
<generator class="sequence">
<param name="sequence">composant_id_composant_seq</param>
</generator>
</id>
<set name="bookmarks" table="bookmark" cascade="all" access="field" >
<cache usage="read-write"/>
<key column="id_modele" />
<element column="username" type="string"/>
</set>
书签
<class name="Bookmark" table="bookmark">
<cache usage="read-write"/>
<composite-id>
<key-many-to-one name="modele" column="id_modele" access="field" />
<key-property name="username" column="username"/>
</composite-id>
</class>
的类
public class Bookmark implements Serializable {
private static final long serialVersionUID = 1L;
private Modele modele;
private String username;
public Modele getModele() {
return modele;
}
public void setModele(Modele modele) {
this.modele = modele;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((modele == null) ? 0 : modele.hashCode());
result = prime * result + ((username == null) ? 0 : username.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Favori other = (Favori) obj;
if (modele == null) {
if (other.modele != null)
return false;
} else if (!modele.equals(other.modele))
return false;
if (username == null) {
if (other.username != null)
return false;
} else if (!username.equals(other.username))
return false;
return true;
}
}
我是否错过了什么?
我正在使用Hibernate Core 3.6.3.Final & Ehcache 2.2.0与Maven,spring core,tx ... 3.0。
在此先感谢您的帮助。
我使用Hibernate Core 3.6.3.Final&Ehcache 2.2.0 – 2011-05-26 21:10:43