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建 ...
随机推荐
- Aspose.Cells导入导出execl
插件:Aspose.Cells 没有安装office插件也能使用: 导出:不能使用ajax异步· /// <summary> /// 导出试题 /// </summary> / ...
- 使用Zxing生成一维码和二维码
首先引用zxing.dll 到项目中引用 using System; using System.Collections.Generic; using System.Drawing; using Sys ...
- 事物TransactionScope
using System.Transactions 如果修改.删除.添加一类操作涉及到多张表,那么最好用事物 trans.Complete();保证多张表的同时修改 using (Transacti ...
- Java基础入门 - Hello world
JDK安装完成后,将一下代码写入文件HelloWorld.java中 // HelloWorld.java public class HelloWorld { public static void m ...
- jsp---》》》新闻发布系统的项目跟踪+++++++文件上传
先来一个分层架构图: WeebRoot目录下的页面: 现在,此项目以实现登录,注销,新闻列表,编辑主题>>>> 先来登录部分的关键代码 index.jsp中的代码 userIn ...
- POS开发问题 - 缓存问题 - 02
问题描述 : 有一个A页面使用了缓存,当从别的页面返回到A页面时, A页面绑定的有些事件,例如监听输入框输入事件:"input",监听点击触摸屏事件:"touchstar ...
- position:fixed相对父级元素定位而不是浏览器
position:fixed默认是相对浏览器定位的 原理:fixed定位相对父级容器定位,不添加:top,bottom,left,right样式,通过margin定位 代码:http://jsbin. ...
- Visual Studio Code 入门教程
Extensible and customizable.(可扩展的和可定制的,这是我喜欢它的原因) Want even more features? Install extensions to add ...
- 关于 Android Studio 如何连接手机调试
第一步:设置-> 打开开发者选项,以及USB调试模式 第二步:关于手机->版本号,点击版本号会弹出提示:已经处于开发者模式,无需操作 第三步:设置->在搜索框中输入HDB,此时会弹出 ...
- 责任链模式(ChainOfResponsibiliby、Filter)
Request 类: package com.demo; public class Request { private String requestStr; public String getRequ ...