Redis数据库 : python与java操作redis
redis 包
from redis import *
连接: r = StrictRedis(host='localhost', port='6379')
读写:r.set('key','value')
r.get('key')
第二种方法: pipline(缓冲命令,一次执行)
pip = r.pipline()
pip.set('key','value')
pip.get('key')
pip.execute() ---用这个方法执行缓冲的语句
===========================================================================================
java需要用 jedis包,如果需要用pool还需要commons-pool2包.
Jedis jedis = new Jedis("ip", 端口);
jedis.auth("root");
.................
使用池子:
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(); // 最大连接数
config.setMaxIdle(); // 最大空闲连接数
JedisPool pool = new JedisPool(config, "ip", 端口);
Jedis jedis = pool.getResource();
jedis.auth("root");
.............................
使用redis集群,一个JedisShardInfo就是一个redis服务器的信息:
package com; import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
import redis.clients.jedis.*; import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.List; /**
* @author Zhai
* 2019/04/01 16:56
*/ public class JedisTest {
public static void main(String[] args) throws URISyntaxException {
GenericObjectPoolConfig config = new GenericObjectPoolConfig(); // config配置
List<JedisShardInfo> infos = new ArrayList<>();
JedisShardInfo info = new JedisShardInfo(new URI("redis://:qwe...@127.0.0.1:6379/1"));
infos.add(info);
ShardedJedisPool pool = new ShardedJedisPool(config, infos); ShardedJedis resource = pool.getResource();// 从连接池获取client
if (resource == null) System.out.println("获取client出错");
resource.set("key01", "value data");
resource.expire("key01", 5); // 5秒之后清除
resource.close();
pool.close();
}
}
===================================================================================================================
在spring boot中使用 spring data redis, 首先添加pom文件:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
application.properties 文件配置(单个redis节点):
spring.redis.host=1.1.1.1
spring.redis.port=6379
spring.redis.password=123
spring.redis.database=0
添加bean(注意bean的名称必须为redisTemplate,这样才能覆盖默认配置):
@Bean(name = "redisTemplate")
public RedisTemplate<String, Object> redisTemplate(LettuceConnectionFactory factory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
Jackson2JsonRedisSerializer<Object> serializer = new Jackson2JsonRedisSerializer<>(Object.class);
ObjectMapper mapper = new ObjectMapper();
mapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);//所有属性均可见
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);//为null不参加序列化
mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);//在Redis中存储对象类信息
serializer.setObjectMapper(mapper);
template.setKeySerializer(new StringRedisSerializer());
template.setValueSerializer(serializer);
template.setHashKeySerializer(new StringRedisSerializer());
template.setHashValueSerializer(serializer);
template.setConnectionFactory(factory);
return template;
}
Redis数据库 : python与java操作redis的更多相关文章
- windows下Redis安装及利用java操作Redis
一.windows下Redis安装 1.Redis下载 下载地址:https://github.com/MicrosoftArchive/redis 打开下载地址后,选择版本 然后选择压缩包 下载 R ...
- 【redis,1】java操作redis: 将string、list、map、自己定义的对象保存到redis中
一.操作string .list .map 对象 1.引入jar: jedis-2.1.0.jar 2.代码 /** * @param args */ public s ...
- java、python及jmeter操作redis(接口自动化必备)
redis是nosql数据库之一,其存储结构简单,提供高性能服务,所以在架构中是很常用的. 在做接口自动化测试过程中,有时也会涉及到redis,比如:发送短信验证码,我们做接口自动化测试,如何模拟发送 ...
- Linux+Redis实战教程_day02_3、redis数据类型_4、String命令_5、hash命令_6、java操作redis数据库技术
3. redis数据类型[重点] redis 使用的是键值对保存数据.(map) key:全部都是字符串 value:有五种数据类型 Key名:自定义,key名不要过长,否则影响使用效率 Key名不要 ...
- java操作redis redis连接池
redis作为缓存型数据库,越来越受到大家的欢迎,这里简单介绍一下java如何操作redis. 1.java连接redis java通过需要jedis的jar包获取Jedis连接. jedis-2.8 ...
- (Windows Maven项目)Redis数据库的安装和操作实现
Redis是一个内存数据库,他会把你写入当中的数据缓存到内存中,之后会周期性的往磁盘中写入.这篇文章中介绍的是在Windows环境下利用Maven工具编译运行Java文件实现Red ...
- java操作redis学习(一):安装及连接
文章参考自:http://www.cnblogs.com/edisonfeng/p/3571870.html,在此基础上进行了修改. 一.下载安装Redis redis官网显示暂时不支持Windows ...
- Java操作redis【二十】
1.首先需要将redis的绑定地址为127.0.0.1去掉,同时将redis的保护模式去掉,并且开放6379端口. 如果是保护模式需要输入密码才能连接. (1)去掉绑定地址: (2)去掉保护模式: ( ...
- 使用Java操作Redis(一)
Redis是一款基于key-value的数据库服务器,安装完成后我们可以通过redis-cli使用Redis提供的命令完成各种操作.redis-cli实际上就是一款客户端,和redis-server建 ...
随机推荐
- 关于webform textbox Password 模式
textbox在这个模式时,如果进行点击按钮或者其他与后台交互的操作,则状态不会保留,既密码框内容会被清空: 这个可以在前台使用 隐藏控件加js获取密码框内容赋值到隐藏控件,点击刷新后通过后台为密码框 ...
- DNN学习笔记 最简单的皮肤制作
说明: 在学习DNN时,使用的版本为 DNN8.参考资料:http://www.dnnsoftware.com/docs/designers/creating-themes/index.html 制作 ...
- fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤)(转)
fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤) Fiddler 有一个filters可以很好的帮助我们只显示我们关系的请求或 ...
- jQuery的表单验证
jQuery的表单验证 直接上代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...
- js之正则表达式(RegExp对象)
先看一个很有意思的例子: 用字面量的方式定义了一个正则表达式 /\w/g,再重复匹配字符串 ‘ab’ 的时候,出现了结果不唯一的现象. 很多新手都对这种现象感到困惑,难道是正则表达式不稳定吗? 接下来 ...
- 什么是TOPO学
拓扑,一个跟门萨同样古怪的“科技Word”.其定义,对绝大多数读者而言,不一定需要理解,但无妨知道———拓扑学,数学的一门分科,研究几何图形在一对一的双方连续变换下不变的性质.不少门萨题,来自拓扑学, ...
- 使用sqlyog连接ubuntu mysql server错误解决方案
现在很多服务都部署在linux环境中,但是在开发阶段,使用windows远程连接工具,直观,这对开发人员更友好. 下面是我在ubuntu16.04使用mysql- server时,遇到了一下的问题,以 ...
- Python基础学习之语句和语法
语句和语法 python语句中有一些基本规则和特殊字符: 井号键“#”表示之后的字符为python注释: 三引号(‘‘‘ ’’’)可以多行注释 换行“\n”是标准的行分隔符(通常一个语句一行): 反斜 ...
- API:access_token
access_token存在意义: 1.身份验证(一个channel_id一般有0个或1个有效的access_token) 2.限制用户访问服务器数据的有效期 3.限制用户访问权限 access_ ...
- 同步软件UltraCompare 64位 软件及注册机
软件及注册机下载: https://share.weiyun.com/f09e6243887e374ead1b3a3ab8f611a9 软件官方下载地址: https://www.ultraedit ...