springboot整合redis,实现增删改查操作
首先创建一个Maven工程,导入相关依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-parent</artifactId>
<version>2.1.5.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
</dependencies>
接下来打开redis服务端和客户端
接下来写一个user实体类,注意要实现序列化接口
@Data
//要实现序列化接口
public class User implements Serializable {
private int id;
private String name;
private int age;
}
接下来写一个yml文件配置redis(注意如果是Windows下装的redis,host就是本地ip,如果redis在Linux下,就通过ifconfig查看Linux下的ip)
spring:
redis:
database: 0
host: 192.168.2.128
port: 6379
接下来写一个usercontroller实现增删改查(改也相当于add操作,所以没写)
@RestController
public class UserController {
@Autowired
private RedisTemplate redisTemplate;
//存入用户信息,将json数据转化为java对象
@PostMapping("add")
public void add(@RequestBody User user)
{
redisTemplate.opsForValue().set("user",user);
}
@GetMapping("search/{key}")
public User search(@PathVariable("key") String key)
{
return (User)redisTemplate.opsForValue().get(key);
}
@DeleteMapping("delete/{key}")
public boolean delete(@PathVariable("key") String key)
{
redisTemplate.delete(key);
return redisTemplate.hasKey(key);
}
}
最后写一个启动类
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
项目启动后我们在postman工具下进行测试
首先写一个json数据然后访问http://localhost:8080/add
接下来访问http://localhost:8080/search/user来查看这个key下的用户信息
记下来访问http://localhost:8080/delete/user删除这个key如果显示false代表删除成功(因为return方法写的是redis是否还有这个key,删除了就没了)