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. :last-child的诡异的问题!!

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 修改Eclipse的WorkSpace保持数[转载]

    最近用Eclipse开发特别多,我个人习惯每一个项目一个WorkSpace,这样的话代码干净.而且当项目之前编码规范不一样时,也不会彼此影响.但项目一多,Eclipse默认只保存5个WorkSpace ...

  3. 操作native window的QxtWindowSystem (好像是一个IM的一部分)

    http://libqxt.bitbucket.org/doc/0.6/qxtwindowsystem.html https://github.com/psi-plus/plugins/blob/ma ...

  4. python总结

    环境:django,numpy,matplotlib, 解释语言:开发效率高,通用性强,内置方便的数据容器,易于扩展和嵌入. 语言:lua--嵌入式/网络/APP,erlang--嵌入式,python ...

  5. CCNP路由实验(1) -- EIGRP

    EIGRP(Enhanced Interior Gateway Routing Protocol,增强型内部网关路由协议)是Cisco公司开发的一个平衡混合型路由协议,它融合了距离向量和链路状态两种路 ...

  6. Codeforces 353D Queue(构造法)

    [题目链接] http://codeforces.com/contest/353/problem/D [题目大意] 10^6个男女排队,每一秒,如果男生在女生前面,即pos[i]是男生,pos[i+1 ...

  7. Ubuntu下安装Wine&WineQQ+Phpstorm+wps+svn+vim(计划任的使用)+flashplayer+curl扩展

    一.安装Wine 1.添加PPA sudo add-apt-repository ppa:ubuntu-wine/ppa 2.更新列表 sudo apt-get update 3.安装Wine sud ...

  8. 校园招聘 - 比較easy的面试题

    又到校园招聘的季节了, 自从和一些同事出版了<编程之美>一书之后, 我常常收到一些关于面试, 编程,  和"题库"的询问. 事实上我自己对算法没有什么研究, 有些问题都 ...

  9. 经典mssql语句大全

    一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...

  10. docNet基础学完感想

    开学后的一个多月因为要准备acm省赛,所以docnet视频基本没看了!不过,虽然在省赛前每天都在做题,赛前刷了80多题吧!!但是比赛的时候就3题,渣啊!只做出了3个水题,后面两个小时搞两题就是出不来, ...