歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Widnows下Memcached中Java簡單應用

Widnows下Memcached中Java簡單應用

日期:2017/2/27 16:01:00   编辑:Linux教程
1.准備工作
1)MemCached For Win32 服務器端下載地址:http://code.jellycan.com/memcached/

2)MemCached Java Client 客戶端下載地址:https://github.com/gwhalin/Memcached-Java-Client/downloads

2.安裝服務器
將下載好的memcached.exe文件放到指定目錄,比如:D:\memcached。打開cmd切換到D:\memcached
1)安裝
memcached.exe -d install 

2)啟動服務
memcached.exe -d start  

3)檢查是否安裝並啟動成功
打開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 顯示幫助

3.編寫Java測試用例
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);
	}
}

先測試add方法,再執行get;然後執行replace,再執行get方法。
我們發現user實例已經保存到memcached服務器上了。
Copyright © Linux教程網 All Rights Reserved