Java中Redis简单入门

Redis是一个开源的,先进的 key-value 存储可用于构建高性能,可扩展的 Web 应用程序的解决方案。html

Redis官方网网站是:http://www.redis.io/,以下:java

Redis 有三个主要使其有别于其它不少竞争对手的特色:
  • Redis是彻底在内存中保存数据的数据库,使用磁盘只是为了持久性目的; 
  • Redis相比许多键值数据存储系统有相对丰富的数据类型; 
  • Redis能够将数据复制到任意数量的从服务器中; 

Redis优势

  • 异常快速 : Redis是很是快的,每秒能够执行大约110000设置操做,81000个/每秒的读取操做。redis

  • 支持丰富的数据类型 : Redis支持最大多数开发人员已经知道如列表,集合,可排序集合,哈希等数据类型。sql

    这使得在应用中很容易解决的各类问题,由于咱们知道哪些问题处理使用哪一种数据类型更好解决。
  • 操做都是原子的 : 全部 Redis 的操做都是原子,从而确保当两个客户同时访问 Redis 服务器获得的是更新后的值(最新值)。数据库

  • MultiUtility工具:Redis是一个多功能实用工具,能够在不少如:缓存,消息传递队列中使用(Redis原生支持发布/订阅),在应用程序中,如:Web应用程序会话,网站页面点击数等任何短暂的数据;

要在windows中安装redis:windows

  • 在官网中下载redis压缩包
  • 执行cmd命令找到redis的存放目录,启动服务器端,如图:

而后再客户端也能够直接经过cmd命令链接,如图:api

该图是链接本地redis而且向其中set相似于map集合《“myKey”,“test”》。而后经过get方法获取。缓存

上面作了redis的介绍以及安装启动服务器以及链接以后,接下来主要讲解一下在Java中如何使用,这也是如今愈来愈流行的一项技术:tomcat

  • 首先在java中使用Redis,须要引入Redis驱动,就是jedis-2.1.0.jar,而这个jar包又依赖于commons-pool-1.6.jar以及tomcat-redis-session-manager-1.2-tomcat-7.jar,因此咱们至少须要这个三个jar包。
  • 第二步即是上面说的启动本地redis服务器。
  • 而后在Java中经过驱动链接本地redis,以下:
     Jedis jedis = new Jedis("localhost");
    

      

  • 同时为了测试链接成功能够向上图命令中那样插入keyvlaue值,如: jedis.set("myKey", "成功");而后控制台输出获取值:
    System.out.println("Redis key value :"+jedis.get("myKey"));
    

      

到这简单redis在Java中就可使用了,如需了解更多功能,可查看中文apihttp://www.360doc.com/content/15/0328/12/5054188_458684113.shtml服务器

ps:redis存在的好处就在于无需频繁的访问数据库,当一些数据不会发生变化时能够直接添加到redis中,好比聊天一些历史记录等,相似于缓存,这样大大的提升了性能,笔者建议在使用redis最好结合着数据库一块儿使用。下面复制一段代码是笔者写的一段结合redis和数据库登录的小测试功能中的一段代码:

int user_id = 2;//用户id
String user_name;//用户名
if(jedis.hexists("user"+user_id, "user_name")){//判断jedis中是否存在"user"+user_id哈希表而且value值为user_name
user_name =jedis.hget("user"+user_id, "user_name");//若是存在直接获取而后登录
System.out.println("欢迎来到Redis登录: "+user_name);
}else{//若是不存在,则须要查询数据库判断用户名密码是否正确,若是存在则登录,而且将其信息保存至redis
String sql = "select user_name from user_t where id = "+user_id+"";
try {
ResultSet rs =	conn.createStatement().executeQuery(sql);
if(rs.next()){
jedis.hset("user"+user_id, "user_name", rs.getString("user_name"));//保存至redis中
System.out.println("欢迎来到MySql登录: "+rs.getString("user_name"));
}else{
System.out.println("欢迎 注册");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

  

到这里一个算是完整的redis简单入门就介绍完了。欢迎互相学习。

相关文章
相关标签/搜索