0

これは私のエンティティがどのように見えるかです

@Entity
@Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)   

@Table(name = "TestPojoOnly")
@NamedQueries({@NamedQuery(name = "TestPojoOnly.findAll", query = "SELECT h FROM TestPojoOnly h"), @NamedQuery(name = "TestPojoOnly.findById", query = "SELECT h FROM TestPojoOnly h WHERE h.id = :id"), @NamedQuery(name = "TestPojoOnly.findByCategoryname", query = "SELECT h FROM TestPojoOnly h WHERE h.categoryname = :categoryname")})
public class TestPojoOnly implements Serializable {

私のehcache.xml

<cache name="com.package.model.TestPojoOnly"
    maxElementsInMemory="200"
    eternal="false"
    overflowToDisk="false"
    timeToIdleSeconds="0"
    timeToLiveSeconds="0"
/>

Q.すでに時間をゼロに設定し、eternalをfalseに設定しましたが、dbからエンティティをロードしようとすると。それはまだキャッシュから取得します。time = 0は、キャッシュがないことを意味しますか?私は何かを逃しましたか?

参照:http: //www.copypastecode.com/16833/にある私のappcontex.xml

4

1 に答える 1

2

timeToIdleSecondsとtimeToLiveSecondsはどちらも、ゼロを無限大として扱います。iPhoneから適切に切り取って貼り付けることはできませんが、ここのehcache構成ドキュメントでtimeToLiveSecondsを見つけると、 「値0は、要素が無限に存続できることを意味します」と表示されます。

于 2009-12-04T02:46:33.270 に答える