文档章节

maven spring 使用memcached方法

KeepMoving
 KeepMoving
发布于 2015/02/25 15:07
字数 531
阅读 135
收藏 1

maven配置mem的方法看maven加载memcached方法

memcached.properties:

#设置Memcached服务器参数
#设置服务器地址
memcached.server=127.0.0.1:11211
#容错
memcached.failOver=true
#设置初始连接数
memcached.initConn=20
#设置最小连接数
memcached.minConn=10
#设置最大连接数
memcached.maxConn=250
#设置连接池维护线程的睡眠时间
memcached.maintSleep=3000
#设置是否使用Nagle算法(Socket的参数),如果是true在写数据时不缓冲,立即发送出去
memcached.nagle=false
#设置socket的读取等待超时时间
memcached.socketTO=3000
#设置连接心跳监测开关
memcached.aliveCheck=true

applicationContext-memcached.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jee="http://www.springframework.org/schema/jee"
    xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"
    default-lazy-init="false" >
    <bean id="memCachedPool" class="com.whalin.MemCached.SockIOPool" factory-method="getInstance" init-method="initialize" destroy-method="shutDown" >
        <constructor-arg>
            <value>memCachedPool</value>
        </constructor-arg>
        <property name="servers">
            <list>
                <value>${memcached.server}</value>
            </list>
        </property>
        <property name="initConn">
            <value>${memcached.initConn}</value>
        </property>
            
        <property name="minConn">
            <value>${memcached.minConn}</value>
        </property>

        <property name="maxConn">
            <value>${memcached.maxConn}</value>
        </property>

        <property name="maintSleep">
            <value>${memcached.maintSleep}</value>
        </property>

        <property name="nagle">
            <value>${memcached.nagle}</value>
        </property>

        <property name="socketTO">
            <value>${memcached.socketTO}</value>
        </property>
    </bean>
    <bean id="memCachedClient" class="com.whalin.MemCached.MemCachedClient">
        <constructor-arg>
            <value>memCachedPool</value>
        </constructor-arg>
    </bean>
</beans>

注意:由于刚开始没有在

<bean id="memCachedPool" lazy-init="false"

中加入lazy-init="false" 提示SockIOPool 没有初始化,这个应该跟spring加载各模块的顺序有关,没有深究,可以查看问题:使用spring和memcached的困惑

java代码:

package com.nd.friend.component;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.whalin.MemCached.MemCachedClient;  

/**
 * memcached组件
 * 
 * 
 * @author kxn
 * @since 2015/02/25
 *
 */

@Component
public class MemcachedFactory {

    @Autowired
    BeanFactory beanFactory;

    public final MemCachedClient getInstance() {
        
        MemCachedClient memObj = null;
        memObj = (MemCachedClient) beanFactory.getBean("memCachedClient");
        if (memObj == null) {
            throw new RuntimeException("MemCachedClient is null....");
        }
        return memObj;
    }

}

使用:

import com.nd.friend.component.MemcachedFactory;
import com.whalin.MemCached.MemCachedClient; 
public class CommentController {
    @Autowired
    private MemcachedFactory memFactory;

    public void test(){
        MemCachedClient memObj = memFactory.getInstance();
        memObj.set("name", "kxn");  
        System.out.println(memObj.get("name"));// cache_1  
        System.out.println(memObj.get("name2"));// null  
    }
}

说明:代码中的improt的包 根据实际情况使用,这边记录以备忘学习

© 著作权归作者所有

共有 人打赏支持
KeepMoving
粉丝 13
博文 20
码字总数 3503
作品 0
厦门
高级程序员
私信 提问
征服 Redis + Jedis

用Memcached,对于缓存对象大小有要求,单个对象不得大于1MB,且不支持复杂的数据类型,譬如SET 等。基于这些限制,有必要考虑Redis! 相关链接: 征服 Redis 征服 Redis + Jedis 征服 Redi...

凯文加内特
2015/03/18
0
0
memcached 在maven项目中使用

还在继续使用我的maven来整理系统 ,当然前段时间也讲了如何使用maven 可能memcached没有写好文章 失误,下面的文章会补上。 今天在整理系统的时候 发现我的memcached是百度下的jar 直接在家...

杨中仁
2015/06/28
0
3
weixin4j

https://github.com/foxinmy/weixin4j weixin4j需要memcached依赖库文件,而这个库文件是没有,如何加 https://devcenter.heroku.com/articles/local-maven-dependencies create local repo......

bravelionking
2016/05/23
3
0
Spring依赖注入:在spring配置文件中使用properties配置文件

spring的配置文件相对是固定的,通常作为资源文件存在,而程序中经常会有一些需要配置的变量,比如数据库的连接信息,memcached的地址信息等等,这些信息最好单独放在java的配置文件propert...

yuanyuan_186
2015/11/13
0
0
xmemcached的使用以及与spring的整合

memcache:http://memcached.org/ github地址:https://github.com/killme2008/xmemcached 其他客户端: https://code.google.com/archive/p/spymemcached/ http://github.com/gwhalin/Memc......

菜蚜
2014/12/16
0
3

没有更多内容

加载失败,请刷新页面

加载更多

如何删除本地服务

Microsoft Windows [版本 10.0.17134.407] (c) 2018 Microsoft Corporation。保留所有权利。 C:\WINDOWS\system32>SC 描述: SC 是用来与服务控制管理器和服务进行通信 的命令行程序。 用法:...

码农屌丝
11分钟前
1
0
Web安全学习规划

一名合格的Web安全工程师是要具备很多的知识点,不但要对网站架构熟悉,通讯协议,测试流程与测试工具使用,漏洞利用脚本编写,还有需要经验的积累等。 互联网进入下半场,竞争越发的激烈,能...

Linux就该这么学
16分钟前
1
0
爬虫Requests基本使用

Requests基本使用 安装 pip install requests 一、Requests模块请求 获取网页(不带参数) r = requests.get('http://www.chinahufei.com')r = requests.post('http://www.chinahufei.com')......

chinahufei
17分钟前
1
0
为什么要学习Python?这10个理由足够了!

摘要: 看完这十个理由,我决定买本python从入门到精通! 如果你定期关注现今的科技发展,那么你可能想知道我为什么要写这篇文章告诉人们学习Python?因为几年前我提倡Java而不是Python。 在...

阿里云官方博客
29分钟前
5
0
spring服务方式配置okhttp3

问题 如果把OKhttp以Spring服务方式配置,就解决了从配置中心运行时刷新配置参数的问题。 OkHttpConfig.java package com.zyl.config;import okhttp3.OkHttpClient;import org.springfra...

亚林瓜子
30分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部