日期:2014-05-19  浏览次数:20678 次

hibernate 缓存问题,同步set里数据

我用户的Hibernate3,ssh2框架,今天加入OSCache缓存,发现图片被评论后,评论内容取不到;

下面是映射文件配置

这是我的图片类 Userimage;    replyuserimages是对图片的评论

 <class name="com.non.model.Userimage" table="userimage" catalog="hcger">
    <cache usage="read-write"/>
        <id name="imageid" type="java.lang.Long">
            <column name="imageid" />
            <generator class="identity" />
        </id>

  .......

<!--图片评论,主要是这里被缓存了,<cache usage="read-write"/>要是我把这行代码去掉,就能立即显示评论内容-->

 <set name="replyuserimages" inverse="true" order-by="imreplyid desc">
        <cache usage="read-write"/>
            <key>
                <column name="imageid" />
            </key>
            <one-to-many class="com.non.model.Replyuserimage" />
        </set>

页面评论是用jstl标签取的,${image.replyuserimages};如果我提交一个评论,页面不会显示评论内容;评论数据是已经存进数据库里的,现在肯定是读取的缓存数据;请问如何同步set里的数据? 
hibernate cache 数据库

------解决方案--------------------
我觉得你的理解有误。你可以这样尝试以下,评论后,重新登录,看这些评论能否看到,如果能看到,说明跟数据库、Hibernate没有关系,是页面的缓存的问题。
------解决方案--------------------
提交评论是通过hibernate?


关于hibernate的缓存使用 
http://blog.csdn.net/woshichenxu/article/details/586361