关闭

spring整合redis集群遇到的问题及MyEclipse下Maven的安装配置

标签: redisspring集群mavenmyeclipse
1050人阅读 评论(1) 收藏 举报
分类:

这几天一直在学习redis集群。然后准备用spring实现redis多机操作,不幸的是,遇到问题好几天都解决不了,一度想放弃,可是想想,遇到困难正是学习提高的时候,就决定换种方式去实现多机操作。现在我把遇到问题贴出来:

application-context.xml

 

<beans xmlns="http://www.springframework.org/schema/beans"   
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"  
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName">


<!-- jedis 连接池配置-->  
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">    
    <property name="maxActive"     value="${redis.pool.maxActive}" />    
    <property name="maxIdle"       value="${redis.pool.maxIdle}" />    
    <property name="maxWait"       value="${redis.pool.maxWait}" />    
    <property name="testOnBorrow"  value="${redis.pool.testOnBorrow}" />  
</bean>    

<bean id="shardedJedisPool" class="redis.clients.jedis.ShardedJedisPool">  
       <constructor-arg index="0" ref="jedisPoolConfig"/>  
       <constructor-arg index="1">  
          <list>  
               <bean name="slaver" class="redis.clients.jedis.JedisShardInfo">  
                   <constructor-arg index="0" value="redis.ip"/>  
                   <constructor-arg index="1" value="${redis.port}" type="int"/>  
              </bean>  
                
               <bean name="master" class="redis.clients.jedis.JedisShardInfo">  
                   <constructor-arg index="0" value="redis2.ip"/>  
                   <constructor-arg index="1" value="${redis.port}" type="int"/>  
              </bean>   
           </list>  
       </constructor-arg>  
   </bean> 
  

 
<!-- 引入properties配置文件 --> 
 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
  <property name="locations"> 
    <list> 
      <value>classpath:*.properties</value> 
      <!--要是有多个配置文件,只需在这里继续添加即可 -->
    </list> 
  </property> 
</bean>

</beans>
  

 

db.properties(ps:因为家里电脑只安装一个redis服务,所以此处两个ip添一样,为方便测试不再开启第二个redis服务)

 

redis.ip=192.168.232.128
redis2.ip=192.168.232.128 
#Port     
redis.port=6379  
  
#最大分配的对象数  
redis.pool.maxActive=1024  
#最大能够保持idel状态的对象数 
redis.pool.maxIdle=200  
#当池内没有返回对象时,最大等待时间
redis.pool.maxWait=1000  
#当调用borrow Object方法时,是否进行有效性检查   
redis.pool.testOnBorrow=true  
#当调用return Object方法时,是否进行有效性检查  
redis.pool.testOnReturn=true  

 

测试代码:

 
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;


public class Test {
	
	public static void main(String[] args) {  
		   //resources/beans.xml  
		ShardedJedisPool shardedPool = null;
		ApplicationContext context = new ClassPathXmlApplicationContext("classpath:Config.xml"); 
		shardedPool = (ShardedJedisPool)context.getBean("shardedJedisPool"); 
		    ShardedJedis  client = shardedPool.getResource();  
		   
		   try{ 
		       client.set("dddd", "sss");  
		       System.out.println(client.get("dddd"));
		       
		   }catch(Exception e){  
	       e.printStackTrace();  
		   }finally{  
			   shardedPool.returnResource(client);//must be  
		   }  
		 
		}  
	
}
 
<span style="font-size:14px;color:#ff0000;"><strong>测试结果:</strong></span>
<strong><span style="font-size:14px;color:#ff0000;"> </span></strong>
<strong><span style="font-size:14px;color:#ff0000;"> </span></strong>
<strong><span style="font-size:14px;color:#ff0000;">  <img src="http://img.blog.csdn.net/20160601002241745?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></span></strong>
<strong><span style="font-size:14px;color:#ff0000;"> </span></strong>
 
   
 <span style="font-size:14px;color:#ff0000;"><strong>关于这个错误网上找了好久都没有找到什么解决办法,但是我如果我把db.properties的配置直接写死在spring bean的属性里不会报错,如下:</strong></span>
 
 
 
   
    <img src="http://img.blog.csdn.net/20160601002525692?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />     <span style="font-size:14px;color:#ff0000;"><strong>  测试不会报错:</strong></span>
 

             

  我在网上找了很多spring整合redis集群的例子,发现都是用maven去构建的,难道我这样不用maven去获取db.properties就会有问题?哎,本人学识少,真的是很无奈啊。既然这样,我就准备尝试用maven去构建并实现spring并整合redis的集群。今天先把maven安装配置好。maven的安装配置网上很多资料,因我没用过maven,不过我就重复造轮子安装配置maven。

 
<span style="font-size:18px;color:#ff0000;">maven包下载地址:http://maven.apache.org/download.html</span>
 
<span style="font-size:14px;"><strong>  下载后解压到D:\maven\apache-maven-3.3.9-bin,配置maven3的环境变量:先配置M2_HOME的环境变量,新建一个系统变量:M2_HOME , 路径是:D:\maven\apache-maven-3.2.1,如图所示:</strong></span>
<strong><span style="font-size:14px;"></span></strong> 
<strong><span style="font-size:14px;">  <img src="http://img.blog.csdn.net/20160601002956350?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></span></strong>
 
<span style="font-size:14px;"><strong>再配置path环境变量,在path值的末尾添加"%M2_HOME%\bin",如下图所示;</strong></span>
<strong><span style="font-size:14px;"></span></strong> 
 
    <img src="http://img.blog.csdn.net/20160601003048366?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
      

点击确定之后,打开cmd窗口:输入mvn -version,出现如下内容表示安装成功。

 

    


 Maven添加本地仓库:

打开本地存放maven目录 例如:D:\maven\apache-maven-3.3.9-bin\apache-maven-3.3.9,打开conf文件夹下的settings.xml文件,找到第53行,把注释去掉,修改成:<localRepository>E:/mvnRespo</localRepository>

 

eclipse中的设置:

为Eclipse安装Maven插件(默认已有,无需安装)为Eclipse配置MAVEN

从Eclipse的菜单栏点击Windows-> Preferences -> Maven  ->Installations,将之前解压的maven添加进来,如图所示

 


 

点击User Settings 使用我们自己的Maven配置,如图所示

 

至此,就可以建maven项目了

 

maven已经搭建好了,等下次抽空用maven构建spring整合redis集群的例子,ok,睡觉!

 

 

2
1
查看评论

Windows系统下Maven的安装与在MyEclipse下的配置

1.maven的下载与安装 http://maven.apache.org/download.cgi 2.下载后解压, 需要进行相关环境变量的配置.本文中将apache-maven-3.3.9 放到了C:\Program Files (x86)目录下 新建系统变量MAVEN_HOM...
  • chenbinqq
  • chenbinqq
  • 2016-08-08 23:42
  • 436

在学习HTML5的过程中遇到的奇葩问题及解决方案

Chrome中canvas上drawImage无法画出image的解决办法 博客分类:  HTML5 & Android canvashtml5  在自己写demo的过程中 碰到了这样一个问题 发现drawImage方法没有达到预期的效果 图片...
  • QINKELIANGQIN
  • QINKELIANGQIN
  • 2015-06-26 17:08
  • 1435

最近工作中遇到的问题以及解决方法总结

项目编译报错 linker command failed with exit code 1 (use -v to see invocation) 对着这个错误,很常见,但引起这个错误的原因却是千奇百怪。这种错误很隐蔽,因为没有详细的错误信息提示。网上也有很多解决方案。但由于原因不一样,所以都无解。...
  • u013749108
  • u013749108
  • 2017-08-25 21:27
  • 402

项目交付中遇到的问题及解决方案

遇到的紧急事件: Q:  1. 突然需要交付单元测试用例和单元测试报告; 2. 需要交付接口测试用例和接口测试报告; 3. 平时测试没有维护过用例,造成交付时时间紧急,不能及时交付; 4. 不能很好的激励同事去学习新东西,导致很多问题需要自己亲手处理,造成工作量增加; 5. 不...
  • jerrygirl
  • jerrygirl
  • 2017-08-24 15:10
  • 221

Myeclipse2014下的maven的安装与使用

一、maven的安装与配置 1.访问http://download.csdn.net/detail/greatplain/9068119,下载安装maven3.3.3 2.下载完成后,以我的安装路径为例D:\apache-maven-3.3.3 打开计算机-属性-高级-环境变量 新建系统变量...
  • qq781317982
  • qq781317982
  • 2017-03-31 21:11
  • 3457

项目中遇到的 问题及解决方案

1.Caused by: libcore.io.GaiException: getaddrinfo failed: EAI_NODATA 解决方案:1).android设备网络连接没打开,例如3G网络和WIFI网络      所以,如果遇到这种错误时...
  • Dreamfree3
  • Dreamfree3
  • 2016-03-01 15:47
  • 1626

记录网页制作过程中遇到的问题及解决方案

2017/5/24  学习的第三周---大致了解了html,css,js,使用了一些css 一.将一个div始终在父级中垂直居中: 1.刚接触时,将子div的top设置为50%后,在减去div高度的一般,这中方法实际上是可以能实现垂直居中的,但是一旦调整父级或子级高度将手动去改变减去的...
  • Rajon_94
  • Rajon_94
  • 2017-05-24 14:28
  • 510

Redis集群与spring的整合

上一篇详细的赘述了Redis的curd操作及集群的搭建。下面我们开始将他整合到我们实际的项目中去。我的项目采用的是标准的ssm框架,ssm框架这里不说,直接开始整合。 首先在maven管理中将我们的jar包引入 <!--1.7.2 开始支持Redis 集群--> <dependen...
  • u013132051
  • u013132051
  • 2016-12-21 12:45
  • 10712

开发过程中遇到问题解决方法

自定义cell 时获取到的width 总是320: https://my.oschina.net/ioslighter/blog/390880 dyld: Library not loaded: @rpath Reason: image not found 错误的解决: In th...
  • u013410274
  • u013410274
  • 2017-04-25 09:46
  • 229

使用MFC过程中遇到的问题以及解决方法(一)

在自己工作的过程中,遇到了有关于C和C++的一些问题,在这里记录一下,以防止后期的编码过程中被同样的问题难住. 首先记录一下今天遇到的问题吧: 1.有关于MFC多线程更新UI(利用消息机制)的问题 第一步,应该先在主界面中创建一个独立的对象,例如要实现一个字符串的消息传递,就再头文件中定义一个...
  • z5622139
  • z5622139
  • 2017-03-08 15:23
  • 176
    个人资料
    • 访问:128585次
    • 积分:2312
    • 等级:
    • 排名:第19100名
    • 原创:80篇
    • 转载:16篇
    • 译文:1篇
    • 评论:135条
    联系方式
      联系方式
      点击这里给我发消息
      点击这里给我发消息
      点击这里给我发消息 学习的路上, 与君共勉。如有疑惑, 欢迎小窗。
    博客专栏