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. codeforces 633C. Spy Syndrome 2 hash

    题目链接 C. Spy Syndrome 2 time limit per test 2 seconds memory limit per test 256 megabytes input stand ...

  2. SVN权限配置

    初始化SVN仓库后,里面有以下文件. 其中conf是对授权.认证进行管理的,conf目录里的内容有: passwd设立账户密码: authz权限管理: 假设pwd里有user1,user2两个账户 @ ...

  3. JAVA并发,线程异常捕获

    由于线程的特性,当我们启动了线程是没有办法用try catch捕获异常的,如下例: package com.xt.thinks21_2; import java.util.concurrent.Exe ...

  4. poj 3269 Building A New Barn

    #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> ...

  5. 《Java4Android视频教程》学习笔记(三)

    一:抽象类 接口 1.使用abstract修饰抽象类 抽象函数 2.一个类中有一个或者多个抽象函数,必须定义为抽象类 3.抽象类可以不含有抽象函数 4.抽象类不可以生成对象 tip:如果一个代码在语意 ...

  6. HDU 5877 Weak Pair(树状数组)

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=5877 [题目大意] 给出一棵带权有根树,询问有几对存在祖先关系的点对满足权值相乘小于等于k. [题 ...

  7. S3C6410 GPIO操作接口

    在后面的驱动学习中,需要对GPIO进行一系列的操作,了解这些引脚操作有助于编码的效率. 一.配置GPIO S3C6410要使用其引脚时,需要对其进行配置,如配置为输入/输出/中断等功能,根据芯片手册来 ...

  8. poj 2406 Power Strings(KMP变形)

    Power Strings Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 28102   Accepted: 11755 D ...

  9. Java程序猿的JavaScript学习笔记(8——jQuery选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  10. Cookie获取、设置值

    设置: HttpCookie cookie = new HttpCookie("cookieName"); cookie.Value = "name1" Htt ...