一、redis 介绍
本文使用的是redis_x64版本,上网下载后解压即可。
解压后,打开目录,修改配置文件
可以修改启动密码等操作。
修改好配之后,启动 cmd。
输入:redis-server.exe redis.windows.conf
如图:
启动后,可以通过 client来连接测试。
在 cmd中 redis-cli.exe
然后需要输入密码
auth foobared
登录成功后,可以用 set ,get来测试下,如图:
二、使用springboot 集成 redis
1、添加依赖项
新建 springboot 的项目后,需要添加依赖项,完成的依赖项如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.8.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.xyzh</groupId>
<artifactId>redistest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>redistest</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
2、修改配置文件
添加依赖项之后,需要修改配置文件,修改 application.yml
server:
port: 8082
spring:
application:
name: redistest
redis:
port: 6379
password: foobared
host: XXXXX.xx.xx.xx
这里只是简单的配置
3、添加实体类
一般对于redis,如果使用对象的方式存储,就是使用到 redis的hash存储。
程序中新建实体类
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.springframework.data.annotation.Id;
import org.springframework.data.redis.core.RedisHash;
import org.springframework.data.redis.core.index.Indexed;
@RedisHash("Person")
@Getter
@Setter
@NoArgsConstructor
public class Person {
@Id
private String id;
@Indexed
private String name;
private String company;
}
4、添加 repository
import com.xyzh.redistest.entity.Person;
import org.springframework.data.repository.CrudRepository;
public interface PersonRepository extends CrudRepository<Person, String> {
}
5、添加service
import com.xyzh.redistest.entity.Person;
import com.xyzh.redistest.respository.PersonRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@Service
public class PersonService {
@Autowired
private PersonRepository personRepository;
public List<Person> getPersons(){
Iterable<Person> persons= personRepository.findAll();
List<Person> datas=new ArrayList<>();
Iterator<Person> iterator= persons.iterator();
for(; iterator.hasNext();){
Person p=iterator.next();
datas.add(p);
}
return datas;
}
public void Save(String name){
Person p=new Person();
p.setName(name);
p.setCompany("航空结算");
personRepository.save(p);
}
}
6、添加controller
import com.xyzh.redistest.entity.Person;
import com.xyzh.redistest.service.PersonService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class PersonController {
@Autowired
PersonService personService;
@GetMapping(value="/getAll")
public List<Person> GetAllPerson(){
return personService.getPersons();
}
@GetMapping(value = "add/{name}")
public String add(@PathVariable("name") String name){
personService.Save(name);
return "OK";
}
}
完成后可以启动,测试。
整个示例完成!