package com.txc.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.springframework.data.redis.core.*;
import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.sql.Date;
import java.util.*;
import java.util.concurrent.TimeUnit;
@Controller
public class TestController {
@Resource
private RedisTemplate redisTemplate;
//redsiTemplate操作,通用命令
@RequestMapping("/testGe")
@ResponseBody
public void testGe() {
//获取指定的keyz值,如*,??list,keys*
redisTemplate.keys("");
//删除指定的key
redisTemplate.delete("");
//给key重命名
redisTemplate.rename("","");
//设置key的有效期
redisTemplate.expire("username",3000,TimeUnit.SECONDS);
//获取key的有效期
redisTemplate.getExpire("username",TimeUnit.SECONDS);
//清楚key的有效期
redisTemplate.persist("username");
//判断key的类型
redisTemplate.type("");
}
//redsiTemplate操作set类型数据
@RequestMapping("/testZSET")
@ResponseBody
public void testZSET(){
ZSetOperations<String,Object> opsZSET= redisTemplate.opsForZSet();
//向集合zset中添加值java,且分数score设置为1
opsZSET.add("zset","java",1);
//获取java的score
Double score1=opsZSET.score("zset","java");
//获取zset中成员的数量
long count=opsZSET.zCard("zset");
//删除zset集合中的java
String []arr={"java"};
opsZSET.remove("zset");
//按照范围删除,-1表示最后
opsZSET.removeRange("zset",0,-1);
//删除集合zset中score在20-30的所有数据
opsZSET.removeRangeByScore("zset",20,30);
//按照score从到小返回数据
Set<Object> sets=opsZSET.reverseRange("zset",0,-1);
Iterator<Object> ites= sets.iterator();
while(ites.hasNext()){
System.out.println(ites.next());
}
//返回集合zset中20-30的数据,且按照从低到高排序
opsZSET.rangeByScore("zset",20,30);
//为集合zset中java的score值增加5
opsZSET.incrementScore("zset","java",5);
//获取分数在20-30之间的成员
opsZSET.count("zset",20,30);
//按照从小到大规则,返回java在集合zset中的排名
opsZSET.rank("zset","java");
//按照从大到小规则,返回java在集合zset中的排名
opsZSET.reverseRank("zset","java");
}
//redsiTemplate操作set类型数据
@RequestMapping("/testSet")
@ResponseBody
public void testSet() throws Exception {
SetOperations<String,Object> opsSet=redisTemplate.opsForSet();
//向test中添加三个参数
String []arr={"a","b","c"};
opsSet.add("test",arr);
//移出rest中的a值
String []arr1={"a"};
opsSet.remove("test",arr1);
//查询出test中的所有数据,并通过迭代器遍历数据
Set<Object> sets=opsSet.members("test");
Iterator<Object> ites= sets.iterator();
while(ites.hasNext()){
System.out.println(ites.next());
}
//随机获取test中的两个值,但是不删除元数据
opsSet.randomMembers("test",2);
//计算出test和test1的差运算值
opsSet.difference("test","test1");
//将test和test1的差值存入test2中
opsSet.differenceAndStore("test","test1","test2");
//计算test和test1的交集
opsSet.intersect("test","test1");
//将test和test1的交集存入test2中
opsSet.intersectAndStore("test","test1","test2");
//计算test和test1的并集
opsSet.union("test","test1");
//将test和test1的并集存入test2中
opsSet.unionAndStore("test","test1","test2");
//获取test中u安苏的个数
opsSet.size("test");
//从test中随机弹出一个数,且删除元数据
opsSet.pop("test",1);
//将test中的a值移入到test1中
opsSet.move("test","a","test1");
//从集合中随机弹出两个数,不删除元数据
opsSet.randomMembers("test",2);
}
//redsiTemplate操作List类型数据
@RequestMapping("/testList")
@ResponseBody
public void testList() throws Exception {
ListOperations<String,Object> opsList=redisTemplate.opsForList();
/*//向列表list左边添加值1
opsList.leftPush("list","1");
//向列表list左边添加多个值
String []a={"3","4","5"};
opsList.leftPushAll("list",a);
//向列表list右边边添加值
opsList.rightPush("list","1");
//向列表list右边添加多个值
String []b={"7","8","9"};
opsList.rightPushAll("list",b);*/
//从集合的左边弹出三个数,并从结合中删除这三个元素,如:[5, 4, 3]
List<Object> mvalue=opsList.leftPop("list",3);
System.out.println(mvalue);
//从集合的右边弹出三个数,并从结合中删除这三个元素
opsList.rightPop("list",3);
//将集合list右边的值弹出,移动到list1的左边
opsList.rightPopAndLeftPush("list","list");
}
//数据缓存值redis,String类型
@RequestMapping("/testString")
@ResponseBody
public void testString() throws Exception {
System.out.println("======132=========");
//创建操作字符串类型数据的对象
ValueOperations opsString=redisTemplate.opsForValue();
//使用1、添加一条key为username,值为shiyilang的String
opsString.set("username", "shiyilang");
//使用2、查询key为username的值
opsString.get("username");
//使用3:multiSet同时添加多个key和value
Map<String,Object> map=new HashMap<String,Object>();
map.put("a","123");
map.put("b","234");
opsString.multiSet(map);
//使用4:添加key:username,value:晓春qie数据有效期为30秒
opsString.set("username","xiaochun",3000,TimeUnit.SECONDS);
//使用6:getAndSet取值之后,重新赋值为大春
opsString.getAndSet("username","大春");
//使用7:为sex的值增加2
opsString.increment("sex",2);
//使用8:为sex的值增加减2
opsString.decrement("sex",3);
}
//添加hash类型的参数及过期时间
@RequestMapping("/testHash")
@ResponseBody
public void testHash() {
HashOperations opsHash=redisTemplate.opsForHash();
//用法1:put->添加一条hash参数,key为id,value为1001
opsHash.put("stu1","id","1001");
Map<String,Object> map=new HashMap<String,Object>();
map.put("id","123");
map.put("name","晓春");
map.put("sex","1");
//用法2:putAll->:同时向stu1中添加多条数据
opsHash.putAll("stu1",map);
//用法3:get->获取stu1中key为name的值
opsHash.get("stu1","name");
//用法4:increment->为stu1中sex的值增加2
opsHash.increment("stu1","sex",2);
//用法5:delete->删除stu1中的name
opsHash.delete("stu1","name");
//用法6:获取stu1中所有的key和value
Map<String,Object> allKeyAndValue=opsHash.entries("stu1");
//用法7:multiGet->获取stu1中,id和name的值
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
springboot整合redis,springboot连接redis集群 (105个子文件)
$PRODUCT_WORKSPACE_FILE$ 498B
TestService.class 7KB
TestController.class 7KB
RedisUtils.class 2KB
RedisConfig.class 2KB
SpringbootRedisApplication.class 748B
SpringbootRedisApplicationTests.class 580B
.gitignore 395B
.gitignore 184B
springboot_redis.iml 10KB
TestController.java 12KB
RedisConfig.java 2KB
SpringbootRedisApplication.java 389B
SpringbootRedisApplicationTests.java 234B
HELP.md 1KB
uiDesigner.xml 9KB
workspace.xml 3KB
pom.xml 2KB
jarRepositories.xml 879B
compiler.xml 839B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_13_4.xml 736B
Maven__io_netty_netty_transport_native_unix_common_4_1_85_Final.xml 726B
Maven__org_springframework_boot_spring_boot_starter_data_redis_2_7_6.xml 713B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_7_6.xml 713B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 700B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_13_4.xml 695B
Maven__org_springframework_boot_spring_boot_starter_logging_2_7_6.xml 692B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_7_6.xml 685B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_13_4.xml 681B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_7_6.xml 678B
Maven__org_springframework_boot_spring_boot_starter_test_2_7_6.xml 671B
Maven__org_springframework_boot_spring_boot_starter_json_2_7_6.xml 671B
Maven__org_springframework_boot_spring_boot_starter_web_2_7_6.xml 664B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_69.xml 660B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_13_4.xml 651B
Maven__com_fasterxml_jackson_core_jackson_databind_2_13_4_2.xml 644B
Maven__org_springframework_spring_context_support_5_3_24.xml 644B
Maven__org_springframework_data_spring_data_keyvalue_2_7_6.xml 643B
Maven__org_springframework_boot_spring_boot_starter_2_7_6.xml 636B
Maven__org_springframework_data_spring_data_commons_2_7_6.xml 636B
Maven__org_junit_platform_junit_platform_commons_1_8_2.xml 633B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 633B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 633B
Maven__org_junit_platform_junit_platform_engine_1_8_2.xml 626B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_69.xml 625B
Maven__org_springframework_data_spring_data_redis_2_7_6.xml 622B
Maven__org_junit_jupiter_junit_jupiter_params_5_8_2.xml 615B
Maven__org_junit_jupiter_junit_jupiter_engine_5_8_2.xml 615B
Maven__org_springframework_boot_spring_boot_test_2_7_6.xml 615B
Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml 611B
Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_69.xml 611B
Maven__org_springframework_spring_expression_5_3_24.xml 609B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_17_2.xml 608B
Maven__com_fasterxml_jackson_core_jackson_core_2_13_4.xml 602B
Maven__org_mockito_mockito_junit_jupiter_4_5_1.xml 598B
Maven__org_reactivestreams_reactive_streams_1_0_4.xml 595B
Maven__io_lettuce_lettuce_core_6_1_10_RELEASE.xml 594B
Maven__org_junit_jupiter_junit_jupiter_api_5_8_2.xml 594B
Maven__io_netty_netty_transport_4_1_85_Final.xml 593B
Maven__org_springframework_spring_context_5_3_24.xml 588B
Maven__io_netty_netty_resolver_4_1_85_Final.xml 586B
Maven__net_bytebuddy_byte_buddy_agent_1_12_19.xml 585B
Maven__org_springframework_spring_webmvc_5_3_24.xml 581B
Maven__org_springframework_boot_spring_boot_2_7_6.xml 580B
Maven__io_netty_netty_handler_4_1_85_Final.xml 579B
Maven__org_apache_commons_commons_pool2_2_11_1.xml 577B
Maven__ch_qos_logback_logback_classic_1_2_11.xml 575B
Maven__org_springframework_spring_beans_5_3_24.xml 574B
Maven__org_apache_logging_log4j_log4j_api_2_17_2.xml 573B
Maven__io_netty_netty_common_4_1_85_Final.xml 572B
Maven__org_apiguardian_apiguardian_api_1_1_2.xml 572B
Maven__io_netty_netty_buffer_4_1_85_Final.xml 572B
Maven__org_springframework_spring_core_5_3_24.xml 567B
Maven__org_springframework_spring_test_5_3_24.xml 567B
Maven__io_projectreactor_reactor_core_3_4_25.xml 566B
Maven__org_junit_jupiter_junit_jupiter_5_8_2.xml 566B
Maven__io_netty_netty_codec_4_1_85_Final.xml 565B
Maven__org_springframework_spring_jcl_5_3_24.xml 560B
Maven__org_springframework_spring_web_5_3_24.xml 560B
Maven__org_springframework_spring_aop_5_3_24.xml 560B
Maven__org_springframework_spring_oxm_5_3_24.xml 560B
Maven__net_minidev_accessors_smart_2_4_8.xml 556B
Maven__ch_qos_logback_logback_core_1_2_11.xml 554B
Maven__org_springframework_spring_tx_5_3_24.xml 553B
Maven__com_jayway_jsonpath_json_path_2_7_0.xml 546B
Maven__net_bytebuddy_byte_buddy_1_12_19.xml 543B
Maven__org_assertj_assertj_core_3_22_0.xml 542B
Maven__org_skyscreamer_jsonassert_1_5_1.xml 537B
Maven__org_xmlunit_xmlunit_core_2_9_0.xml 535B
Maven__org_mockito_mockito_core_4_5_1.xml 535B
Maven__org_slf4j_jul_to_slf4j_1_7_36.xml 534B
Maven__org_opentest4j_opentest4j_1_2_0.xml 533B
Maven__net_minidev_json_smart_2_4_8.xml 521B
Maven__com_alibaba_fastjson_1_2_75.xml 514B
Maven__org_slf4j_slf4j_api_1_7_36.xml 513B
Maven__org_objenesis_objenesis_3_2.xml 508B
Maven__org_hamcrest_hamcrest_2_2.xml 497B
Maven__org_yaml_snakeyaml_1_30.xml 495B
Maven__redis_clients_jedis_3_8_0.xml 494B
Maven__org_ow2_asm_asm_9_1.xml 458B
共 105 条
- 1
- 2
资源评论
雾林小妖
- 粉丝: 1w+
- 资源: 90
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- yolo目标检测项目实验
- downloadFile-1.hc
- Centos7.9环境下离线安装开源版Nginx(亲测版)
- C++课程设计:基于Qt的航班信息管理系统
- ADS7822UVerilog驱动,前面传的有点问题
- 基于python的高性能爬虫程序,使用了多线程+缓存+xpath实现的,这里以彼-岸图库为例,实现,仅用于学习交流
- 中分辨率成像光谱仪(MODIS)烧毁面积产品信息MODIS-C6-BA-User-Guide-1.2.pdf
- Screenshot_20240427_172613_com.huawei.browser.jpg
- 关于学习Python的相关资源网站链接及相关介绍.docx
- (HAL库)基于STM32F103C8T6的温控PID系统[Dht11、ESP8266、无线透传、L298N……]
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功