SpringBoot整合Redis将对象写入redis的实现
作者:明明就很安静 发布时间:2023-07-30 14:39:07
标签:SpringBoot,对象写入,redis
1、环境搭建
创建一个SpringBoot项目,普通的web项目就可以了,我这里使用的是start.aliyun
引入依赖:
(1)老演员了不多说。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
(2)整合redis
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
(3) 实体类用到了@Data注解
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
(4)将对象转为json存入redis,取出来时将json转为对象
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.30</version>
</dependency>
2、代码编写
(1)在Application启动类的同级目录下创建对应的包
(2)写redis工具类
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import java.util.concurrent.TimeUnit;
@Component
public class RedisUtils {
/**
* 获取redis模板
*/
@Autowired
private StringRedisTemplate stringRedisTemplate;
/**
* 存入String类型
* @param key
* @param value
* @param timeOut
*/
public void setString(String key, String value, Long timeOut){
stringRedisTemplate.opsForValue().set(key, value);
if (timeOut != null){
//设置Redis的key的有效期
stringRedisTemplate.expire(key, timeOut, TimeUnit.SECONDS);
}
}
/**
* 获取String类型
* @param key
* @return
*/
public String getString(String key){
return stringRedisTemplate.opsForValue().get(key);
}
}
实体类:
import lombok.Data;
@Data
public class User {
private String name;
private Integer age;
}
控制层:
import com.alibaba.fastjson.JSONObject;
import com.example.redis.redistudy.pojo.User;
import com.example.redis.redistudy.util.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class RedisController {
@Autowired
private RedisUtils redisUtils;
@GetMapping("/addUser")
public String addUser(){
User user = new User();
user.setName("zhangsan");
user.setAge(18);
String userString = JSONObject.toJSONString(user);
redisUtils.setString("userString",userString, null);
return "存入成功";
}
@GetMapping("/getUser")
public User getUser(String key){
String userString= redisUtils.getString(key);
User user = JSONObject.parseObject(userString, User.class);
return user;
}
}
(3)yml文件配置
spring:
redis:
host: 服务器公网ip
password: root //密码
port: 6379 //端口号
database: 0 //指定存入哪一个库
3、测试
启动程序 ,访问地址:http://localhost:8080/addUser
看一下redis,存入成功
再获取一下,获取成功
地址:http://localhost:8080/getUser?key=userString
来源:https://blog.csdn.net/qq_42251944/article/details/124586950


猜你喜欢
- 一、先来分别介绍一下ArrayList,Hashtable,List<T>,Dictionary<K,V>1.Arr
- 本文实例为大家分享了UnityShader实现运动模糊的具体代码,供大家参考,具体内容如下1.此代码挂在摄像机上,使摄像机运动起来using
- 一、根据流向分为输入流和输出流:注意输入流和输出流是相对于程序而言的。输出:把程序(内存)中的内容输出到磁盘、光盘等存储设备中输入:读取外部
- Android中判断网络是否连接实例详解在android中,如何监测网络的状态呢,这个有的时候也是十分重要的,方法如下:public cla
- 用来练手还是不错的,分享大家看一下,还是一些新颖点的!哈哈 就是自定义DataGridView,方便每个功能部分调用!简单!再次重
- 什么是 Spring Boot 插件?Spring Boot 插件是一种扩展机制,它提供了一种简单的方式来扩展 Spring Boot 的功
- 使用区间使用 in 运算符来检测某个数字是否在指定区间内,区间格式为x..y:实例fun main(args: Array<Strin
- 实践过程效果代码public partial class Form1 : Form{ public Form1()
- 实现Android 滑动退出Activity的功能android向右滑动,退出activity//右滑删除 compile &
- 目录结构:Data.xls数据: 后台页面:public void doGet(HttpServletRequest reques
- java 读取网页内容的实例详解import java.io.BufferedReader; import java.io.IOExcept
- 代码编译运行环境:VS2017+Debug+Win32按照参数形式的不同,C++应该有三种函数调用方式:传值调用、引用调用和指针调用。对于基
- 由于公司的开发团队偏向于使用Java技术,而且公司倡导学习开源技术,所以我选择用Java语言来进行Selenium WebDriver的自动
- 首先:看问题图,如下可以激活ide的网址很多,估计是个团队或者个人,直接买了全部产品的一年的有效期。而且还是会一直更新下去的。因为,后来我自
- 1. 前言现在很多应用都有小悬浮窗的功能,比如看直播的时候,通过Home键返回桌面,直播的小窗口仍可以在屏幕上显示。下面将介绍下悬浮窗的的一
- 本文实例讲述了Android编程之页面切换测试。分享给大家供大家参考。具体分析如下:一、软件平台:win7 + eclipse + sdk二
- 项目中经常会使用到一对多的查询场景,但是PageHelper对这种嵌套查询的支持不够,如果是一对多的列表查询,返回的分页结果是不对的参考Gi
- 实现官方文档说明:com.baomidou.mybatisplus.annotations.TableFieldTableField注解新增
- 在项目开发中,我们返回的数据或者对象没有的时候一般直接返回的null有数据时的返回值{ "flag": true, &q
- 本文实例讲述了C#实现简单合并word文档的方法。分享给大家供大家参考。具体如下:using System;using System.Col