EhCache在特定路径上溢出到磁盘

时间:2012-07-19 11:03:24

标签: java hibernate ehcache

我在我的应用程序中使用带有hibernate的ehcache。 这是ehcache.xml的配置

<ehcache>
    <diskStore path="java.io.tmpdir"/>        

    <defaultCache
            maxElementsInMemory="10"
            eternal="false"
            timeToIdleSeconds="120"
            timeToLiveSeconds="120"
            overflowToDisk="true"
            diskSpoolBufferSizeMB="300"
            maxElementsOnDisk="10000000"
            diskPersistent="false"
            diskExpiryThreadIntervalSeconds="120"
            memoryStoreEvictionPolicy="LRU"
            />
</ehcache>

我的diskStore路径是java.io.tmpdir,我想将其更改为我的应用程序路径 $ {WebApp} / DiskStore

4 个答案:

答案 0 :(得分:11)

存储位置由硬编码路径指定。

路径属性的合法值是合法的文件系统路径。

,例如,对于Unix:/ home / application / cache

以下系统属性也是合法的,在这种情况下它们被翻译:

user.home - User's home directory
user.dir - User's current working directory
java.io.tmpdir - Default temp file path
ehcache.disk.store.dir - A system property 

可以在系统属性下指定子目录,例如:

java.io.tmpdir /一个

在Unix系统上变成:

的/ tmp /一个

答案 1 :(得分:1)

还可以使用将在编译时替换的属性。因此,您需要正确配置pom.xml,例如

<build>
    <filters>
        <filter>${user.home}/my.properties</filter>
    </filters>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

(至少这是我们项目的工作环境)

答案 2 :(得分:1)

我最近尝试过ehcache,并想知道java.io.tmpdir是什么以及它在我的机器上的位置。此页面中接受的答案并未解决我的问题。我检查了/tmp,找不到ehcache文件。

这是我在网上找到的内容,希望对其他人有所帮助:

终端上的

1.run env命令。它打印OS环境。就我而言,它给了我:

TMPDIR=/var/folders/1j/pb3h7_hl7890px72_f8mntd00000gn/T/

2.或者,您可以从python控制台查询:

Python 3.5.1 (v3.5.1:37a07cee5969, Dec  5 2015, 21:12:44)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tempfile
>>> tempfile.gettempdir()
'/var/folders/1j/pb3h7_hl7890px72_f8mntd00000gn/T'

答案 3 :(得分:0)

你在这里。

user.home->这是用户主目录e.i C:\ Users \ abc(windowdrive:\ Users \ username) user.dir-> C:\ Users \ abc \ eclipse-workspace \ project java.io.tmpdir-> C:\ Users \ abc \ AppData \ Local \ Temp \ ehcache.disk.store.dir-系统属性(https://www.ehcache.org/documentation/3.7/

要获得更多帮助,请随时通过电子邮件uncer_sh@yahoo.com进行通信

谢谢