springboot使用Redis作缓存使用入门教程


Posted in Redis onJuly 25, 2021

1.依赖与数据库设置

<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-redis</artifactId>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-pool2</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.session</groupId>
			<artifactId>spring-session-data-redis</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
spring.redis.database=0  

spring.redis.host=localhost

spring.redis.port=6379  

spring.redis.password=123 #自己的密码

spring.redis.lettuce.pool.max-active=8

spring.redis.lettuce.pool.max-wait=-1

spring.redis.lettuce.pool.max-idle=8

spring.redis.lettuce.pool.min-idle=0

2.redis和session配置

@Configuration
@EnableCaching
public class RedisConfig extends CachingConfigurerSupport{
	
	@Bean
	public KeyGenerator keyGenerator() {
        return new KeyGenerator() {
            @Override
            public Object generate(Object target, Method method, Object... params) {
                StringBuilder sb = new StringBuilder();
                sb.append(target.getClass().getName());
                sb.append(method.getName());
                for (Object obj : params) {
                    sb.append(obj.toString());
                }
                return sb.toString();
            }
        };
    }
}

@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400*30)
public class SessionConfig {
}

3.实体与controller层

public class User implements Serializable {

	private static final long serialVersionUID = 1L;
	private Long id;
	private String userName;
	private String password;
	private String email;
	private String nickname;
	private String regTime;

	public User() {
		super();
	}
	public User(String email, String nickname, String password, String userName, String regTime) {
		super();
		this.email = email;
		this.nickname = nickname;
		this.password = password;
		this.userName = userName;
		this.regTime = regTime;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	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 getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getNickname() {
		return nickname;
	}

	public void setNickname(String nickname) {
		this.nickname = nickname;
	}

	public String getRegTime() {
		return regTime;
	}

	public void setRegTime(String regTime) {
		this.regTime = regTime;
	}

	@Override
	public String toString() {
		return "User{" +
				"id=" + id +
				", userName='" + userName + '\'' +
				", password='" + password + '\'' +
				", email='" + email + '\'' +
				", nickname='" + nickname + '\'' +
				", regTime='" + regTime + '\'' +
				'}';
	}
}
@RestController
public class UserController {

    @RequestMapping("/getUser")
    @Cacheable(value="user-key")
    public User getUser() {
        User user=new User("aa@126.com", "aa", "aa123456", "aa","123");
        System.out.println("测试缓存");
        return user;
    }


    @RequestMapping("/uid")
    String uid(HttpSession session) {
        UUID uid = (UUID) session.getAttribute("uid");
        if (uid == null) {
            uid = UUID.randomUUID();
        }
        session.setAttribute("uid", uid);
        return session.getId();
    }
}

4.运行

@SpringBootApplication
public class RedisApplication {

	public static void main(String[] args) {
		SpringApplication.run(RedisApplication.class, args);
	}
}

运行结果:

springboot使用Redis作缓存使用入门教程

springboot使用Redis作缓存使用入门教程

springboot使用Redis作缓存使用入门教程

同时也可以用专门的图形界面工具查看:

springboot使用Redis作缓存使用入门教程

到此这篇关于springboot使用Redis作缓存使用入门的文章就介绍到这了,更多相关springboot Redis缓存内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Redis 相关文章推荐
浅谈Redis在直播场景的实践方案
Apr 27 Redis
redis 限制内存使用大小的实现
May 08 Redis
基于Redis延迟队列的实现代码
May 13 Redis
Redis 彻底禁用RDB持久化操作
Jul 09 Redis
Redis源码阅读:Redis字符串SDS详解
Jul 15 Redis
SpringBoot集成Redis的思路详解
Oct 16 Redis
Redis之RedisTemplate配置方式(序列和反序列化)
Mar 13 Redis
redis数据结构之压缩列表
Mar 21 Redis
Redis实现一个账号只能登录一个设备
Apr 19 Redis
windows安装 redis 6.2.6最新步骤详解
Apr 26 Redis
浅谈Redis缓冲区机制
Jun 05 Redis
Redis中一个String类型引发的惨案
缓存替换策略及应用(以Redis、InnoDB为例)
浅谈redis整数集为什么不能降级
嵌入式Redis服务器在Spring Boot测试中的使用教程
Jul 21 #Redis
Redis源码阅读:Redis字符串SDS详解
浅谈Redis位图(Bitmap)及Redis二进制中的问题
Redis做数据持久化的解决方案及底层原理
Jul 15 #Redis
You might like
探讨PHP JSON中文乱码的解决方法详解
2013/06/06 PHP
php简单备份与还原MySql的方法
2016/05/09 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
使用composer 安装 laravel框架的方法图文详解
2019/08/02 PHP
用javascript实现的图片马赛克后显示并切换加文字功能
2007/04/21 Javascript
jQuery+.net实现浏览更多内容(改编php版本)
2013/03/28 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
jQuery在iframe中无法弹出对话框的解决方法
2014/01/12 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
JavaScript设计模式之建造者模式介绍
2014/12/28 Javascript
jQuery插件制作之全局函数用法实例
2015/06/01 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
jQuery validate插件功能与用法详解
2016/12/15 Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
2017/04/07 Javascript
微信小程序 标签传入数据
2017/05/08 Javascript
jQuery正则验证注册页面经典实例
2017/06/10 jQuery
js禁止Backspace键使浏览器后退的实现方法
2017/09/01 Javascript
jquery实现搜索框功能实例详解
2018/07/23 jQuery
微信小程序实现聊天室
2020/08/21 Javascript
vue 使用饿了么UI仿写teambition的筛选功能
2021/03/01 Vue.js
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
Python读写txt文本文件的操作方法全解析
2016/06/26 Python
详解 Python 读写XML文件的实例
2017/08/02 Python
Python matplotlib的使用并自定义colormap的方法
2018/12/13 Python
详解Python 解压缩文件
2019/04/09 Python
python已协程方式处理任务实现过程
2019/12/27 Python
如何基于Django实现上下文章跳转
2020/09/16 Python
伦敦最受欢迎的蛋糕店:Konditor & Cook
2019/11/01 全球购物
维德科技C#面试题笔试题
2015/12/09 面试题
学校三八妇女节活动情况总结
2014/03/09 职场文书
大学生村官演讲稿
2014/04/25 职场文书
商铺消防安全责任书
2014/07/29 职场文书
邮政竞聘演讲稿
2014/09/03 职场文书
物业客服专员岗位职责
2015/04/07 职场文书
golang中的并发和并行
2021/05/08 Golang