1.准备工作
1)MemCached For Win32 服务器端下载地址:http://code.jellycan.com/memcached/
本文中用到的版本:http://download.csdn.net/detail/supercrsky/5166196
2)MemCached Java Client 客户端下载地址:https://github.com/gwhalin/Memcached-Java-Client/downloads
本文中用到的版本:http://download.csdn.net/detail/supercrsky/5166537
2.安装服务器
将下载好的memcached.exe文件放到指定目录,比如:D:\memcached。打开cmd切换到D:\memcached
1)安装
memcached.exe -d install2)启动服务
memcached.exe -d start3)检查是否安装并启动成功
打开windows服务器,找到memcached Server服务
4)详细的启动参数如下:
-p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务 -d uninstall 卸载memcached服务 -u 以的身份运行 (仅在以root运行的时候有效) -m 最大内存使用,单位MB。默认64MB -M 内存耗尽时返回错误,而不是删除项 -c 最大同时连接数,默认是1024 -f 块大小增长因子,默认是1.25 -n 最小分配空间,key+value+flags默认是48 -h 显示帮助
1)将下载好的java_memcached-release_2.6.6.zip中的jar全部放到工程lib中,并加入JUnit4支持。
2)Java代码
创建要保存的JavaBean<User>
package com; import java.io.Serializable; import java.util.Date; /** * 必须实现序列化接口<MemCached的要求> * @author zdw * */ public class User implements Serializable { private static final long serialVersionUID = 1L; private Long usid; private String username; private String password; private Date createtime; public Long getUsid() { return usid; } public void setUsid(Long usid) { this.usid = usid; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Date getCreatetime() { return createtime; } public void setCreatetime(Date createtime) { this.createtime = createtime; } }
package com; import java.util.Date; import org.junit.Test; import com.danga.MemCached.MemCachedClient; import com.danga.MemCached.SockIOPool; /** * 缓存测试 * @author zdw * */ public class MemcachedTest { private MemCachedClient mc = new MemCachedClient(); static { //指定服务器,默认为本机,默认端口为11211 String[] serverlist = { "127.0.0.1:11211" }; SockIOPool pool = SockIOPool.getInstance(); pool.setServers(serverlist); pool.initialize(); } @Test public void testAdd() { User user = new User(); user.setUsername("likaifu"); user.setPassword("it"); user.setCreatetime(new Date()); mc.set("user1",user); } @Test public void testGet() { User user = (User) mc.get("user1"); System.out.println(user.getUsername()); } @Test public void testReplace() { User user = new User(); user.setUsername("李开复"); user.setPassword("挨踢"); user.setCreatetime(new Date()); mc.replace("user1", user); } }
我们发现user实例已经保存到memcached服务器上了。
Demo下载