使用Java开发项目的时候使用Redis的话,目前有一些开源API可以使用。
最常用的就是jedis,它提供了许多基于Java的对象和方法来调用Redis的指令。

jedis的jar包下载地址http://download.csdn.net/detail/teamlet/8914387(jedis-2.7.2.jar)

我们下面构建一个最基本的包含Jedis的Java工程环境,来测试Jedis与Redis的连接。

1.创建工程
首先打开我们的Eclipse或者MyEclipse,创建一个名为“RedisTest”的WebProject工程:

创建完成:


为了便于讲解,我们暂时不用Maven等技术管理jar,我们直接将jedis-2.7.2.jar放
入WebRoot/WEB-INF/lib文件夹下,然后加入BuildPath:


2.创建测试类
我们创建一个cn.com.redis.test包,然后在其下面创建“TestPing”类:


3.启动redis服务
测试连接我们首先要启动redis,我是在Windows上使用VMware虚拟机安装了Linux系统,在其中
安装了Redis。

所以,我们启动VMware虚拟机的Linux系统:


打开控制台,开启Redis服务:

查看以下目前有多少个key:


Redis服务启动之后,我们才能去连接。

3.编写代码测试连接
我们使用JDBC连接Mysql数据库的时候,需要知道数据库的ip和端口号。连接redis也是一样,
我们也是需要知道redis所在服务器的ip和端口号。

在linux上通过ifconfig -a指令,得知我们现在的主机的ip为"192.168.248.129":

redis所在端口号为"6379"(安装redis默认的端口号)。

编写测试类:

  1. package cn.com.redis;
  2. import redis.clients.jedis.Jedis;
  3. public class TestPing {
  4. public static void main(String[] args) {
  5. Jedis jedis = new Jedis("192.168.248.129",6379);
  6. //ping通显示PONG
  7. System.out.println(jedis.ping());//去ping我们redis的主机所在ip和端口
  8. }
  9. }

执行后:

说明我们连接redis服务成功。

具体开发请看以后的总结文章。

注意:如果ping不通,可能会报这种错误:


首先检查一下linux的防火墙是不是关闭了:

上面是暂时关闭,想要永久关闭,使用:
命令:#chkconfig --level 2345 iptables off
或者 #chkconfig  iptables off
其中2345 代表”执行等级“

注:我使用的是Linux版本为CentOS6.5,其它版本指令会有所不同

如果还没有联通,我们要检查一下redis是否开启“远程登录”,
原来是redis默认只能localhost登录,所以需要开启远程登录。解决方法如下:  
在redis的配置文件redis.conf中,找到bind关键字,配好我们要绑定的ip
(或者只注释掉band 127.0.0.1) 

   
(注:band 127.0.0.1   只能本机访问,局域网内计算机不能访问。  
    bind  局域网IP   只能局域网内IP的机器访问, 本地localhost都无法访问。)

还有一种原因是因为我们没有配置“端口转发”。因为虚拟机的网络配置的是nat方式,所以
他的地址是跟本机在一个网段内的,但是他只能与本机联通,局域网内的其他机器
是不可以ping通的。那么我们如何配置端口转发呢?
(1)在虚拟机的编辑下选择虚拟网络编辑器


(2)要保证Linux系统采用的nat模式
依次检查下图所示的红框中的内容,一定要保持一致:


(3)进行NAT设置
上边的配置检查完毕后,我们需要进行NAT设置,在这里配置一个端口转发。
添加一个主机使用的端口,在添加虚拟机中redis服务的ip地址,和端口号。


之后程序可以访问虚拟机中的Redis服务了。

redis11--java_jedis-test的更多相关文章

  1. Redis11种Web应用场景

    Redis的一个非常大优点就是能够不用整个转入到这个数据库,而是能够沿用之前的MySQL等数据库,而仅在一些特定的应用场景通过Redis的特性提高效率.本文列出了11个这种Web应用场景,如显示最新的 ...

  2. Redis Sentinel高可用配置及C#访问

    本文环境如下: 操作系统:ubuntu-14.04.1-desktop-amd64 Redis:2.8.19 如果使用虚拟机则将每台的网络设置为桥接,否则他们之间能连上,局域网连不上. 系统设计如图: ...

  3. 第一章· Redis入门部署及持久化介绍

    Redis简介 Redis安装部署 Redis持久化 Redis简介 软件说明: Redis是一款开源的,ANSI C语言编写的,高级键值(key-value)缓存和支持永久存储NoSQL数据库产品. ...

  4. python 之操作redis数据库(非关系型数据库,k-v)

    数据库: 1. 关系型数据库 表结构 2. 非关系型数据库 nosql (k - v 速度快),常用的时以下三种: memcache 存在内存里 redis 存在内存里 mangodb 数据还是存在磁 ...

  5. 在 Linux 上实现一段时间后自动登出非活动用户

    参考 编辑 ~/.bashrc 或 ~/.bash_profile 文件: $ vi ~/.bashrc 或, $ vi ~/.bash_profile 将下面行加入其中: TMOUT=100 这会让 ...

随机推荐

  1. 把虚拟机中的Linux系统安装到U盘中

    [小技巧] 把虚拟机中的Linux系统安装到U盘中 出于各种需求,很多用户可能经常会在Windows系统中安装虚拟机,然后在虚拟机中安装Linux系统.使用虚拟机的优点是可以同时使用多个系统,而缺点也 ...

  2. hdu2534-Score

    http://acm.hdu.edu.cn/showproblem.php?pid=2534 由题知, 每一个数据都可以由ax +by组成: ax1 + by1 - c x2 a - d y2 == ...

  3. JAVA多线程suspend()、resume()和wait()、notify()的区别

    suspend() 和 resume() 方法:两个方法配套使用,suspend()使得线程进入阻塞状态,并且不会自动恢复,必须其对应的 resume() 被调用,才能使得线程重新进入可执行状态.典型 ...

  4. hdu3415 Max Sum of Max-K-sub-sequence

       Max Sum of Max-K-sub-sequence Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64 ...

  5. ABAP 通过sumbit调用另外一个程序使用job形式执行-简单例子

    涉及到两个程序: ZTEST_ZUMA02 (主程序) ZTEST_ZUMA(被调用的程序,需要以后台job执行) "ztest_zuma 的代码 DATA col TYPE i VALUE ...

  6. Scrapy框架安装配置小结

    Windows 平台: 系统是 Win7 Python  2.7.7版本 官网文档:http://doc.scrapy.org/en/latest/intro/install.html 1.安装Pyt ...

  7. @Transactional问题记录下

    系统中多数据源  在control 层 分别使用不同数据源的service ,有个service 调用相应的dao直接出现表或视图不存在,发现这个service类上加了@Transactional 注 ...

  8. 【原生js】js动态添加dom,如何绑定事件

    首先要明白浏览器在加载页面的时候是按顺序来加载的,这样以来就很清楚了,js动态添加dom以后,这些dom并没有绑定事件,这个时候最简单的一个办法就是:将绑定事件的方法封装到一个函数A中,在动态添加完d ...

  9. digitalocean Vultr Linode 三家海外vps最新真实情况

    中国有大批用户,在使用海外vps服务器.好处是不言而喻的:性价比高.带宽大.免备案.可搭梯子,没有后门监控. 有趣的是,每一年的周期观察,都能发现海外vps对中国大陆的线路速度.可用性变化.过去速度快 ...

  10. LoadLibraryW 参数问题

    error C2664: "LoadLibraryW": 不能将参数1 从"const char [8]"转换为"LPCWSTR" 右击工程 ...