Springboot使用RedisTemplate基本步骤

来源:互联网 发布:表达很牛的网络用语 编辑:程序博客网 时间:2024/04/28 23:23
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>test_core</groupId>  <artifactId>com.xuboke.core</artifactId>  <version>0.0.1-SNAPSHOT</version><parent>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-parent</artifactId>    <version>1.4.2.RELEASE</version>    <relativePath/> <!-- lookup parent from repository --></parent><properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>    <java.version>1.8</java.version></properties><dependencies>    <dependency>       <groupId>mysql</groupId>       <artifactId>mysql-connector-java</artifactId>    </dependency>    <!-- spring data jpa的依赖-->    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-data-jpa</artifactId>    </dependency>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-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-starter-test</artifactId>        <scope>test</scope>    </dependency></dependencies><!-- 通过mvn package打包后在任意地方通过java命令启动 --><build>    <plugins>        <plugin>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-maven-plugin</artifactId>        </plugin>    </plugins></build></project>

默认配置文件:application.properties

# REDIS (RedisProperties)# Redis数据库索引(默认为0)spring.redis.database=0# Redis服务器地址spring.redis.host=localhost# Redis服务器连接端口spring.redis.port=6379# Redis服务器连接密码(默认为空)spring.redis.password=# 连接池最大连接数(使用负值表示没有限制)spring.redis.pool.max-active=8# 连接池最大阻塞等待时间(使用负值表示没有限制)spring.redis.pool.max-wait=-1# 连接池中的最大空闲连接spring.redis.pool.max-idle=8# 连接池中的最小空闲连接spring.redis.pool.min-idle=0# 连接超时时间(毫秒)spring.redis.timeout=0

序列化的user对象

public class User implements Serializable {    private static final long serialVersionUID = -1L;    private String username;    private Integer age;    public User(String username, Integer age) {        this.username = username;        this.age = age;    }    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }}

测试StringRedisTemplate和RedisTemplate

@RunWith(SpringRunner.class)@SpringBootTestpublic class RedisTest {    @Autowired    private StringRedisTemplate stringRedisTemplate;    @Autowired    private RedisTemplate<String, User> redisTemplate;    @Test    public void test() throws Exception {        // 保存字符串        stringRedisTemplate.opsForValue().set("aaa", "111");        Assert.assertEquals("111", stringRedisTemplate.opsForValue().get("aaa"));    }    @Test    public void test1() throws Exception {        // 保存对象        User user = new User("超人", 20);        redisTemplate.opsForValue().set(user.getUsername(), user);        user = new User("蝙蝠侠", 30);        redisTemplate.opsForValue().set(user.getUsername(), user);        user = new User("蜘蛛侠", 40);        redisTemplate.opsForValue().set(user.getUsername(), user);        Assert.assertEquals(20, redisTemplate.opsForValue().get("超人").getAge().longValue());        Assert.assertEquals(30, redisTemplate.opsForValue().get("蝙蝠侠").getAge().longValue());        Assert.assertEquals(40, redisTemplate.opsForValue().get("蜘蛛侠").getAge().longValue());    } }

RedisTemplate

0 0
原创粉丝点击