• redis客户端jedis连接和spring结合


    摘自传智博客课程
    <beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
    	xmlns:context="http://www.springframework.org/schema/context"
    	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans 
    		http://www.springframework.org/schema/beans/spring-beans-3.2.xsd 
    		http://www.springframework.org/schema/mvc 
    		http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd 
    		http://www.springframework.org/schema/context 
    		http://www.springframework.org/schema/context/spring-context-3.2.xsd 
    		http://www.springframework.org/schema/aop 
    		http://www.springframework.org/schema/aop/spring-aop-3.2.xsd 
    		http://www.springframework.org/schema/tx 
    		http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">
    
    	<!-- 连接池配置 -->
    	<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
    		<!-- 最大连接数 -->
    		<property name="maxTotal" value="30" />
    		<!-- 最大空闲连接数 -->
    		<property name="maxIdle" value="10" />
    		<!-- 每次释放连接的最大数目 -->
    		<property name="numTestsPerEvictionRun" value="1024" />
    		<!-- 释放连接的扫描间隔(毫秒) -->
    		<property name="timeBetweenEvictionRunsMillis" value="30000" />
    		<!-- 连接最小空闲时间 -->
    		<property name="minEvictableIdleTimeMillis" value="1800000" />
    		<!-- 连接空闲多久后释放, 当空闲时间>该值 且 空闲连接>最大空闲连接数 时直接释放 -->
    		<property name="softMinEvictableIdleTimeMillis" value="10000" />
    		<!-- 获取连接时的最大等待毫秒数,小于零:阻塞不确定的时间,默认-1 -->
    		<property name="maxWaitMillis" value="1500" />
    		<!-- 在获取连接的时候检查有效性, 默认false -->
    		<property name="testOnBorrow" value="true" />
    		<!-- 在空闲时检查有效性, 默认false -->
    		<property name="testWhileIdle" value="true" />
    		<!-- 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true -->
    		<property name="blockWhenExhausted" value="false" />
    	</bean>
    	
    	<!-- redis单机 通过连接池 -->
    	<bean id="jedisPool" class="redis.clients.jedis.JedisPool" destroy-method="close">
    		<constructor-arg index="0" ref="jedisPoolConfig"></constructor-arg>
    		<constructor-arg index="1" value="192.168.101.3"></constructor-arg>
    		<constructor-arg index="2" value="6379"></constructor-arg>
    	</bean>
    	
    	
    	<!-- redis集群 -->
    	<bean id="jedisCluster" class="redis.clients.jedis.JedisCluster">
    		<constructor-arg index="0">
    			<set>
    				<bean class="redis.clients.jedis.HostAndPort">
    					<constructor-arg index="0" value="192.168.101.3"></constructor-arg>
    					<constructor-arg index="1" value="7001"></constructor-arg>
    				</bean>
    				<bean class="redis.clients.jedis.HostAndPort">
    					<constructor-arg index="0" value="192.168.101.3"></constructor-arg>
    					<constructor-arg index="1" value="7002"></constructor-arg>
    				</bean>
    				<bean class="redis.clients.jedis.HostAndPort">
    					<constructor-arg index="0" value="192.168.101.3"></constructor-arg>
    					<constructor-arg index="1" value="7003"></constructor-arg>
    				</bean>
    				<bean class="redis.clients.jedis.HostAndPort">
    					<constructor-arg index="0" value="192.168.101.3"></constructor-arg>
    					<constructor-arg index="1" value="7004"></constructor-arg>
    				</bean>
    				<bean class="redis.clients.jedis.HostAndPort">
    					<constructor-arg index="0" value="192.168.101.3"></constructor-arg>
    					<constructor-arg index="1" value="7005"></constructor-arg>
    				</bean>
    				<bean class="redis.clients.jedis.HostAndPort">
    					<constructor-arg index="0" value="192.168.101.3"></constructor-arg>
    					<constructor-arg index="1" value="7006"></constructor-arg>
    				</bean>
    			</set>
    		</constructor-arg>
    		<constructor-arg index="1" ref="jedisPoolConfig"></constructor-arg>
    	</bean>
    
    
    </beans>


    摘自工作项目中

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:p="http://www.springframework.org/schema/p" 
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
      
    	<!-- Jedis 连接池配置 中威配置-->  
    	<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">  
    	    <property name="maxActive" value="${redis.pool.maxActive}" />  
    		<!--#最大空闲连接数, 默认8个-->
    	    <property name="maxIdle" value="${redis.pool.maxIdle}" />  
    	    <property name="maxWait" value="${redis.pool.maxWait}" />  
    	    <property name="testOnBorrow" value="${redis.pool.testOnBorrow}" />  
    	</bean>  
    	
    	<!-- Jedis ConnectionFactory 数据库连接配置-->  
    	<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">  
    	    <property name="hostName" value="${redis.hostname}" />  
    	    <property name="port" value="${redis.port}" />  
    	    <property name="password" value="${redis.password}" />  
    	    <property name="poolConfig" ref="jedisPoolConfig" />  
    	</bean>  
    	<!-- redisTemplate配置,redisTemplate是对Jedis的对redis操作的扩展,有更多的操作,封装使操作更便捷 -->   
    	<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">
    		 <property name="connectionFactory" ref="jedisConnectionFactory" />
    		 <property name="keySerializer">
                 <bean class="org.springframework.data.redis.serializer.StringRedisSerializer" />
             </property>
             <property name="valueSerializer">
                <bean class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer" />
             </property>
             <property name="hashKeySerializer">
                 <bean class="org.springframework.data.redis.serializer.StringRedisSerializer" />
             </property>
             <property name="hashValueSerializer">
                 <bean class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer" />
             </property>
    	</bean>
    </beans>





  • 相关阅读:
    基于Canal和Kafka实现MySQL的Binlog近实时同步
    Levenshtein Distance(编辑距离)算法与使用场景
    超强图文|并发编程【等待/通知机制】就是这个feel~
    volatile和synchronized到底啥区别?多图文讲解告诉你
    读《Clean Code 代码整洁之道》之感悟
    小小TODO标识,你用对了吗?
    深入理解JVM(③)判断对象是否还健在?
    深入理解JVM(③)虚拟机的类加载器(双亲委派模型)
    深入理解JVM(③)经典的垃圾收集器
    深入理解JVM(③)HotSpot虚拟机对象探秘
  • 原文地址:https://www.cnblogs.com/jeffen/p/6117738.html
Copyright © 2020-2023  润新知