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 查看所有的key方式
May 07 Redis
redis 限制内存使用大小的实现
May 08 Redis
深入浅析Redis 集群伸缩原理
May 15 Redis
Redis 配置文件重要属性的具体使用
May 20 Redis
深入理解redis中multi与pipeline
Jun 02 Redis
Redis之RedisTemplate配置方式(序列和反序列化)
Mar 13 Redis
redis调用二维码时的不断刷新排查分析
Apr 01 Redis
浅谈Redis 中的过期删除策略和内存淘汰机制
Apr 03 Redis
 Redis 串行生成顺序编码的方法实现
Apr 03 Redis
Redis实战高并发之扣减库存项目
Apr 14 Redis
Redis Lua脚本实现ip限流示例
Jul 15 Redis
python中使用redis用法详解
Dec 24 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语法(2)
2006/10/09 PHP
第一节--面向对象编程
2006/11/16 PHP
php之curl设置超时实例
2014/11/03 PHP
解决jquery的datepicker的本地化以及Today问题
2012/05/23 Javascript
js改变img标签的src属性在IE下没反应的解决方法
2013/07/23 Javascript
使用AngularJS对路由进行安全性处理的方法
2015/06/18 Javascript
BootStrap Validator使用注意事项(必看篇)
2016/09/28 Javascript
Angularjs中的页面访问权限怎么设置
2016/11/11 Javascript
JavaScript简单验证表单空值及邮箱格式的方法
2017/01/20 Javascript
微信小程序 合法域名校验出错详解及解决办法
2017/03/09 Javascript
详解webpack3编译兼容IE8的正确姿势
2017/12/21 Javascript
微信小程序图表插件wx-charts用法实例详解
2019/05/20 Javascript
vue 解决数组赋值无法渲染在页面的问题
2019/10/28 Javascript
vue-cli3 热更新配置操作
2020/09/18 Javascript
python实现图片处理和特征提取详解
2017/11/13 Python
Sanic框架安装与简单入门示例
2018/07/16 Python
pygame库实现俄罗斯方块小游戏
2019/10/29 Python
基于python2.7实现图形密码生成器的实例代码
2019/11/05 Python
Spring实战之使用util:命名空间简化配置操作示例
2019/12/09 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
python通用读取vcf文件的类(复制粘贴即可用)
2020/02/29 Python
Django实现图片上传功能步骤解析
2020/04/22 Python
解决HTML5中滚动到底部的事件问题
2019/08/22 HTML / CSS
美国成衣女装品牌:CHICO’S
2016/09/19 全球购物
中国跨境电商:Tomtop
2017/03/16 全球购物
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
财务助理岗位职责
2013/11/10 职场文书
学校三八妇女节活动情况总结
2014/03/09 职场文书
就业协议书怎么填
2014/04/11 职场文书
美食节目策划方案
2014/05/31 职场文书
大学英语专业求职信
2014/06/21 职场文书
学校政风行风整改方案
2014/10/25 职场文书
护士长2014年度工作总结
2014/11/11 职场文书
读后感作文评语
2014/12/25 职场文书
如何起草一份正确的合伙创业协议书?
2019/07/04 职场文书
升级 Win11 还是坚守 Win10?微软 Win11 新系统缺失功能大盘点
2022/04/05 数码科技