SpringBoot项目集成Redis
一、在pom文件中添加依赖
<!-- 集成redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
二、在application.yml文件中配置redis
spring:
redis:
host: 127.0.0.1 #redis服务器IP地址
port: 6379 #端口号
jedis:
pool:
max-active: 8 #最大连接数
max-idle: 8 #最大空闲数
min-idle: 0 #最小空闲数
max-wait: 30000 #最大等待时间 ms(毫秒)
timeout: 50000 #连接超时时间 ms(毫秒)
database: 0 #连接的数据库
三、创建RedisConfig文件
package com.ruoyi.web.core.config;
import org.springframework.cache.annotation.CachingConfigurerSupport;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer; /**
* @ClassName RedisConfig
* @Descrption redis序列配置
* @Author wm
* @Date 2020/1/11
* @Version 1.0
*/
@Configuration
public class RedisConfig extends CachingConfigurerSupport { @Bean
public RedisTemplate<String,Object> redisTemplate(RedisConnectionFactory redisConnectionFactory){
//创建RedisTemplate对象
RedisTemplate<String,Object> redisTemplate = new RedisTemplate<String,Object>();
//设置连接工厂
redisTemplate.setConnectionFactory(redisConnectionFactory);
//序列化对象
//简单的字符串序列化
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
//jdk序列化
JdkSerializationRedisSerializer jdkSerializationRedisSerializer = new JdkSerializationRedisSerializer();
//Json序列化
GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer ();
//设置String键的序列化方式
redisTemplate.setKeySerializer(stringRedisSerializer);
//设置String值的序列化方式
redisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer);
return redisTemplate;
}
}
四、例子
package com.ruoyi.web.controller.test; import org.springframework.stereotype.Component; import java.io.Serializable; @Component
public class Test01 implements Serializable { private static final long serialVersionUID = 4332651162911740406L;
private String userName;
private String password;
private String phoneNum; public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public String getPhoneNum() {
return phoneNum;
} public void setPhoneNum(String phoneNum) {
this.phoneNum = phoneNum;
}
}
TestController
import com.ruoyi.zhibowei.service.attendance.IAttendRecordEmployeeStatisService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody; import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit; /**
* @author
* @description TODO
* @create
*/
@Controller
@RequestMapping("/test")
public class TestTestController { @Autowired
private IAttendRecordEmployeeStatisService attendRecordEmployeeStatisService;
@Autowired
private RedisTemplate<String,Object> redisTemplate;
@RequestMapping("/testqj")
public void testQJAttend(){ } @RequestMapping("/demo")
@ResponseBody
public String[] demo(HttpServletRequest request){
List<Test01> userList = new ArrayList<Test01>(); Test01 user1 = new Test01();
user1.setUserName("风雅颂");
user1.setPassword("aw916132444");
user1.setPhoneNum("13874877512"); Test01 user2 = new Test01();
user2.setUserName("水雷屯");
user2.setPassword("xf82652215");
user2.setPhoneNum("15576758485"); Test01 user3 = new Test01();
user3.setUserName("天山遁");
user3.setPassword("sd555292222");
user3.setPhoneNum("13515114556"); userList.add(user1);
userList.add(user2);
userList.add(user3);
redisTemplate.opsForValue().set("userList",userList,60, TimeUnit.SECONDS);
return null;
} @RequestMapping(value="getValue",method={RequestMethod.GET,RequestMethod.POST})
@ResponseBody
public Object getValue(){
Object object = redisTemplate.opsForValue().get("userList");
return object;
} }
输出结果

SpringBoot项目集成Redis的更多相关文章
- SpringBoot项目集成Hystrix
Hystrix Hystrix是由Netflix开源的一个服务隔离组件,通过服务隔离来避免由于依赖延迟.异常,引起资源耗尽导致系统不可用的解决方案. 1.什么是服务熔断 服务熔断就是对该服务的调用 ...
- SpringBoot项目集成PageHelper使用
SpringBoot项目集成PageHelper使用 一.开始 地址:https://github.com/pagehelper/Mybatis-PageHelper 在spring boot ...
- SpringBoot中集成redis
转载:https://www.cnblogs.com/zeng1994/p/03303c805731afc9aa9c60dbbd32a323.html 不是使用注解而是代码调用 需要在springbo ...
- 七、SpringBoot项目集成JSP以及项目不同启动方式及访问路径配置
1.创建JSP目录 在src/main目录下创建目录webapp/WEB-INF/jsp用于存放jsp页面,如下图: 然后再改文件夹下面我们创建JSP文件: 大家在使用IDEA 的new菜单创建JSP ...
- springboot项目集成activity
1.按照上一篇博客,新建好springboot项目后,在项目pom.xml文件中添加activity依赖 <dependency> <groupId>org.activiti& ...
- 谷粒 | 项目集成redis
添加依赖 由于redis缓存是公共应用,所以我们把依赖与配置添加到了common模块下面,在common模块pom.xml下添加以下依赖 <!-- redis --> <depend ...
- Springboot项目集成JPush极光推送(Java SDK)
1.由于项目的需求,需要在Android APP上实现消息推送功能,所以引用了极光推送(官网:https://www.jiguang.cn/, 文档:http://docs.jiguang.cn/) ...
- 使用IDEA快速搭建基于Maven的SpringBoot项目(集成使用Redis)
迫于好久没写博客心慌慌,随便写个简单版的笔记便于查阅. 新建项目 新建项目 然后起名 继续next netx finish. 首先附上demo的项目结构图 配置pom.xml <?xml ver ...
- Spring Boot 项目集成Redis
目录 集成方式 使用Jedis 使用spring-data-redis Redis的安装 绑定配置 获取Redis客户端 Redis工具的编写 使用 集成方式 使用Jedis Jedis是Redis官 ...
随机推荐
- NSObject常用方法
类 @interface NSObject <NSObject> { Class isa OBJC_ISA_AVAILABILITY; } // 初始化加载 + (void)load; / ...
- 模块 os 系统
os系统 os模块是与操作系统交互的一个接口 os.makedirs('dirname1/dirname2') 可生成多层递归目录 os.removedirs('dirname1') 若目录为空,则删 ...
- [codeforces]Page Numbers <模拟>
描述: «Bersoft» company is working on a new version of its most popular text editor — Bord 2010. Bord, ...
- opnet
一.修改默认的文件管理 1.以管理员身份运行 opnet14.5 2. 3.初始默认是c盘下的op_madels 4.修改你默认的文件夹 二. 1.创建一个空场景 包含Manet模型 2. 出错 二. ...
- 1127: 【入门】A类多?B类多?
1127: [入门]A类多?B类多? 时间限制: 1 Sec 内存限制: 16 MB 提交: 3537 解决: 2406 [提交] [状态] [讨论版] [命题人:外部导入] 题目描述 一个自然数转换 ...
- Fetch+SpringBoot跨域请求设置
两种方法从SpringBoot的方向解决跨域问题 今天搭建博客的时候,尝试性的传递数据,发现浏览器报了这个错误 -blocked by CORS policy: No 'Access-Control- ...
- css中border-sizing属性详解和应用
box-sizing用于更改用于计算元素宽度和高度的默认的 CSS 盒子模型.它有content-box.border-box和inherit三种取值.inherit指的是从父元素继承box-sizi ...
- Redis 哨兵模式(Sentinel)
上一篇我们介绍了 redis 主从节点之间的数据同步复制技术,通过一次全量复制和不间断的命令传播,可以达到主从节点数据同步备份的效果,一旦主节点宕机,我们可以选择一个工作正常的 slave 成为新的主 ...
- 最近准备研读thinkphp源码,ctag派上用场了
本人习惯用vim编辑器,这里ctags配置vim很方便. #在ThinkPHP源码目录(假定为/server/thinkphp)执行: $ cd /server/thinkphp $ ctags -R ...
- 本地代码上传到git仓库(github)
准备:拥有自己的github账号:电脑上安装了git; 1.进入github,进入仓库点击NEW(新建仓库) 2.新建仓库 Repository name :仓库名称: Description (op ...