redis的安装,常用命令,spring整合Redis

本文介绍了Redis的安装过程,包括解压、安装和配置,并讲解了Redis的常用命令及数据类型。此外,还详细阐述了如何在Spring中整合Redis,包括引入依赖、配置文件设置以及创建公共配置类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前的阶段练习了Linux系统上JT项目的发布,这里还需要在改回来.
课程准备
1)关掉数据库 :systemctl stop maiadb
2)关闭Linux中的Tomcat服务器
jps之后杀进程kill -9 xxx
3)关闭代理服务器 在sbin目录里面关掉
好了都关掉之后修改switchhosts将地址还原
在这里插入图片描述
然后在yml中修改数据库端口号和地址为
在这里插入图片描述

6)修改图片上传路径
在这里插入图片描述
nginx配置文件也要修改修改为一个服务器还有图片的路径修改下ok

2redis缓存
为什么需要缓存呢,就是因为当客户访问特别多的时候数据库代理也有可能宕机,所以在此之前加入缓存服务器,当客户访问时已经缓存的可以直接返回客户,怎么实现高可用呢就是多加缓存服务器实现富集

这里有几个只是点1缓存使用的是k-v结构必须唯一是一维的
2缓存是用C语言在内存中运行,内存中的数据一断电就擦除,所以Redis具有内存数据持久化将数据保存到磁盘中
HA是高可用的意思
3Redis支持的数据类型有5种分别是 字符串(strings), 散列(hashs),列表(list),集合(sets),有序集合(sorted sets)
4redis 可以被当做数据库 ,缓存和消息中间件
在这里插入图片描述
把Redis安装包安装到Linux里面还是src目录
1拖拽>解压>删除压缩包>改名
tar -xvf xxxxx>rm -f xxxxx>MV xxx xxx
然后安装
1进入Redis根目录执行make
2 make install
在这里插入图片描述
老师在此穿插了一个问题,就是当修改文件时没正确退出,会出现一个.a.txt.swp文件可以点击D删除或者强制删除文件.rm -rf .xxx.swp
在这里插入图片描述

然后编辑Redis.conf
命令 :vim Redis.conf
总共修改三处
1处是修改ip的绑定为本机127.0.0.0.1
2修改保护模式改为no
3开启后台启动
在这里插入图片描述
然后咱们就开启Redis
命令启动 Redis-server Redis.conf
进入客户端 Redis-cli -p 6379
关闭 Redis-cli -p 6379 shutdown
如果Redis是默认端口则可以写
为redis-cli
redis-cli shutdown
这里的Redis常用命令有

String 类型的语句如图在这里插入图片描述
在这里插入图片描述
hash类型(散列)
在这里插入图片描述
list类型
在这里插入图片描述
先进先出是队列,先进后出是栈
最后呢就是spring 和Redis的整合
1首先是manage下pom里面导入jar包
一个是jedis,一个是spring-data-Redis
然后可以做一下测试看springboot和Redis连接上了没
在这里插入图片描述
在这里插入图片描述
这里因为经常得创建对象jedis所以可以整合一下整合思路有3条因为缓存经常用所以放到公共包里
在这里插入图片描述
然后在公共项目里创建一个在这里插入图片描述
配置文件整合Redis
配置类内容如下
`@Configuration// 我是一个配置类,一般都会和@bean联用
@propertySource(“classpath:/properties/redis.properties”)
public class RedisConfig{
@Value("${redis.host}")

private String host;
@Value("${redis.port}")
private Integer port;
////将返回值的结果交给spring容器进行管理,如果以后想要使用该对象则可以直接注入
@Bean
public Jedis jedis()
{
return new Jedis(host ,port);}
}`

配置好之后讲了个如何实现商品分类的缓存问题
在这里插入图片描述
在这里插入图片描述
package com.jt.util;

import org.springframework.util.StringUtils;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class ObjectMapperUtil {

//json与对象的转化   优化异常处理
private static final ObjectMapper MAPPER = new ObjectMapper();

//1.将对象转化为JSON
public static String toJSON(Object target) {
	
	if(target == null) {
		throw new NullPointerException("taget数据为null");
	}
	
	try {
		return MAPPER.writeValueAsString(target);
	} catch (JsonProcessingException e) {
		e.printStackTrace();
		throw new RuntimeException(e); //如果转化过程中有问题则直接抛出异常
	}
	
}


//2. 将json串转化为对象   用户传递什么样的类型,就返回什么样的对象!!!
// <T>  定义了一个泛型对象  代表任意类型
public static <T> T toObject(String json,Class<T> targetClass) {
	
	if(StringUtils.isEmpty(json) || targetClass == null) {
		throw new NullPointerException("参数不能为null");
	}
	
	try {
		return MAPPER.readValue(json, targetClass);
	} catch (JsonProcessingException e) {
		
		e.printStackTrace();
		throw new RuntimeException(e);
	}
}

}

将对象转换为json再将json转换成对象对了API是啥来着我查一下(查了下ApI就是接口)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值