MyBatis与Memcached集成

1    Linux下安装Memcached

由于Memcached依赖libevent,所以,要想在Linux上安装Memcached必须先安装libevent。咱们能够使用如下命令安装:java

yum -y install libevent -devel
缓存

看到下图所示内容后,证实libevent安装成功。服务器

如今,咱们去官网下载Memcached,将软件包放在/opt/soft目录下,或者直接使用wget命令下载。mybatis

使用cd命令进入/opt/soft目录后,使用tar -zxvf memcached-1.x.x.tar.gz解压文件,而后,进入解压出的目录中,使用./configure && make  &&  make install命令安装Memcached。app

等待Memcached安装完成以后,使用ls -al /usr/local/bin/mem*命令验证是否安装成功。使用/usr/local/bin/memcached -d -m 10 -u root -p 12000 -c 256 -P /tmp/memcached.pid命令启动Memcache的服务器。ps -ef | grep 12000能够看到服务已经启动。异步

2    在Java程序中添加依赖Jar

Maven用户:
async

<dependency>
    <groupId>org.mybatis.caches</groupId>
    <artifactId>mybatis-memcached</artifactId>
    <version>1.0.0</version>
</dependency>
memcached

3    开启MyBatis的Memcached缓存

无日志
spa

<mapper namespace="org.acme.FooMapper">
  <cache type="org.mybatis.caches.memcached.MemcachedCache" />
  ...
</mapper>
日志

有日志

<mapper namespace="org.acme.FooMapper">
  <cache type="org.mybatis.caches.memcached.LoggingMemcachedCache" />
  ...
</mapper>

Memcached的配置放在根目录下memcached.properties,若是没有找到,客户端将使用默认配置。

4    配置参数

下表总结了支持的参数,这些参数都是可选的,若是没有设置,客户端将使用默认值。

属性
默认值
描述
org.mybatis.caches.memcached.keyprefix _mybatis_ 任意字符串标识符
org.mybatis.caches.memcached.servers localhost:11211 空格分隔的${host}:${port}列表
org.mybatis.caches.memcached.connectionfactory net.spy.memcached.DefaultConnectionFactory 任意的net.spy.memcached.ConnectionFactory实现类
org.mybatis.caches.memcached.expiration 30天的秒数
过时时间(秒)
org.mybatis.caches.memcached.asyncget false
标记是否启用异步获取
org.mybatis.caches.memcached.timeout 5 使用异步获取的超时时间
org.mybatis.caches.memcached.timeoutunit java.util.concurrent.TimeUnit.SECONDS 使用异步获取的超时时间的单位
org.mybatis.caches.memcached.compression false 若是设置为true,对象放入Memcached时,将被GZIP压缩