package com.calc.tools

import redis.clients.jedis.JedisPool
import redis.clients.jedis.Jedis
import redis.clients.jedis.JedisPoolConfig
import java.util.HashMap object Redis { var shardedJedisPool: JedisPool = null
var shardedJedis: Jedis = null var ADDR: String = "" //redis ip address
var AUTH: String = "" //redis password
var PORT: Int = 6379 //redis port 默认6379
val TIMEOUT: Int = 10000 def initRedis() {
val config: JedisPoolConfig = new JedisPoolConfig();
config.setMaxTotal(100);
config.setMaxIdle(10);
config.setMaxWaitMillis(-1);
config.setTestOnBorrow(true);
shardedJedisPool = new JedisPool(config, ADDR, PORT, TIMEOUT, AUTH);
shardedJedis = shardedJedisPool.getResource
} /**
* 获取redis中key对应的所有数据
*/
def getAllKeys(key: String) {
initRedis()
println(shardedJedis.hkeys(key))
shardedJedisPool.returnResourceObject(shardedJedis)
} /**
* 删除redis中key对应的所有数据
*/
def deleteAll(key: String) {
initRedis()
shardedJedis.del(key)
shardedJedisPool.returnResourceObject(shardedJedis)
} /**
* 将String的数据存放到到redis中
*/
def insertRedisDo(key: String, field: String, value: String): Long = {
initRedis()
var ret: Long = shardedJedis.hset(key, field, value)
shardedJedisPool.returnResourceObject(shardedJedis)
return ret
} /**
* 将hashmap集合中的数据存放到到redis中
* *
*/
def insertRedisByHashmap(key: String, map: HashMap[String, String]) {
initRedis()
shardedJedis.hmset(key, map)
shardedJedisPool.returnResource(shardedJedis);
} def main(args: Array[String]): Unit = { val key: String = "I love you !"
val field: String = "add this field ! "
val value: String = "this is value into redis !" //插入字符串到redis 如果key和field在redis中已存在,则覆盖,相当月更新功能
println(insertRedisDo(key, field, value)) var map: HashMap[String, String] = new HashMap[String, String]
map.put("field1", "value1")
map.put("field2", "value2")
//批量插入HashMap到redis
println(insertRedisByHashmap(key, map))
//删除key下所有数据
println(deleteAll(key))
//获取key下所有数据
getAllKeys(key) } }

其中,ADDR是redis服务器的地址;AUTH是redis的独立密码。

完成。

Redis初始化配置及增删改查的更多相关文章

  1. GreenDao数据库框架的配置与增删改查

    并非原创,原创地址http://blog.csdn.net/njweiyukun/article/details/51893092 配置-------------------------------- ...

  2. 肝 hibernate 配置and增删改查 and 测试

    已经通宵三天撸代码了,现在的我已经养成晚上修仙写代码的节奏了.....最近 刚刚复习到了 hibernate 谈谈 这篇文章就谈谈我对这货的理解吧. 在看这篇文章之前希望你 知道sessionfact ...

  3. nodejs笔记五--MongoDB基本环境配置及增删改查;

    一.基本环境配置: 1,首先到官网(http://www.mongodb.org/downloads )下载合适的安装包,然后一步一步next安装,当然可以自己更改安装目录:安装完成之后,配置环境变量 ...

  4. python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查

    Django中的ORM简介 ORM概念:对象关系映射(Object Relational Mapping,简称ORM): 用面向对象的方式描述数据库,去操作数据库,甚至可以达到不用编写SQL语句就能够 ...

  5. PHP PDO扩展整理,包括环境配置\基本增删改查\事务\预处理

    相关文章:PHP的mysql扩展整理,操作数据库的实现过程分析    PHPmysqli扩展整理,包括面向过程和面向对象的比较\事务控制\批量执行\预处理 介绍 PDO是一种PHP程序连接数据库的接口 ...

  6. spring的mybatis-puls 配置,增删改查操作,分页

    pom <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.or ...

  7. CDH5.15.1 hive 连接mongodb配置及增删改查

    1. 下载 wget http://repo1.maven.org/maven2/org/mongodb/mongo-hadoop/mongo-hadoop-hive/2.0.2/mongo-hado ...

  8. 【Mybatis】XML配置实现增删改查

    ①创建数据库和表,数据库为mytest,表为users CREATE DATABASE mytest; USE mytest; DROP TABLE IF EXISTS users; CREATE T ...

  9. Zend Framework1 框架入门(针对Windows,包含安装配置与数据库增删改查)

    最近公司接的项目需要用到Zend Framework框架,本来需要用的是ZendFramework2 ,但是由于原有代码使用了ZendFramework1 框架,所以顺带学习了.现将一些基础入门记录一 ...

随机推荐

  1. Latex beamer

    使用明体(gbsn)和楷体(gkai)两种字型.以下的编程是一开始的宣告,并自动生成第一张封面投影片. \documentclass[cjk]{beamer}\usepackage{CJKutf8}\ ...

  2. mysql-connector-c 安装

    cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local make make install

  3. C# 保留小数点后两位(方法总结)

    最简单使用: float i=1.6667f; string show=i.ToString("0.00"); //结果1.67(四舍五入) 其他类似方法: string show ...

  4. javascript中对变量类型的推断

    本文正式地址:http://www.xiabingbao.com/javascript/2015/07/04/javascript-type 在JavaScript中,有5种基本数据类型和1种复杂数据 ...

  5. Google Maps 学习笔记(一)2014.06.04

    1.<body onload="加载地图的函数" onunload="GUnload()"> 2.new GMap2(container,opts) ...

  6. Java中this和super的用法总结

    这几天看到类在继承时会用到this和super,这里就做了一点总结,与各位共同交流,有错误请各位指正~ this this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针. this ...

  7. C++ 标准模板库(STL)

    C++ 标准模板库(STL)C++ STL (Standard Template Library标准模板库) 是通用类模板和算法的集合,它提供给程序员一些标准的数据结构的实现如 queues(队列), ...

  8. 循环获取<ul>下拉列表的的值。进行对比,正确的家样式

    $(function () { //要对比的值     var mysqlanswer = $("#wds-mysqlcuranswer").val(); // topic-opt ...

  9. Linux内核学习笔记-1.简介和入门

    原创文章,转载请注明:Linux内核学习笔记-1.简介和入门 By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...

  10. UNIX/Linux-进程控制(实例入门篇)

    UNIX进程   进程标识符 要想对进程控制,必须得获取进程的标识.每个进程都有一个非负整数表示的唯一进程ID,虽然是唯一的,但是进程ID可以重用.当一个进程终止后,其进程ID就可以再次使用了. 系统 ...