redis 实现增删改查,史上最优雅的缓存使用方式
1、redis引入java项目
mvn是一种优雅的依赖管理工具,请使用pom管理依赖。
引入redis的方式如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2、Redis实例
2.1 redis开启Repositories模式
新建一个config类,并使用 @EnableRedisRepositories,
开启redis数据持久化的模式
@Configuration
@EnableRedisRepositories
public class ApplicationConfig {
@Bean
public RedisConnectionFactory connectionFactory() {
return new LettuceConnectionFactory();
}
@Bean
public RedisTemplate<?, ?> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<byte[], byte[]> template = new RedisTemplate<byte[], byte[]>();
template.setConnectionFactory(redisConnectionFactory);
return template;
}
}
2.2 创建实体层
新建一个实体类,就像开发mybatis的接口一样,创建一个操作的对象,你一定注意到redis做持久化增加了2个东西:类的注解@RedisHash(“figure”),属性的注解@Id,这些都是redis做数据持久层需要的:RedisHash和Id这2个注解,共同决定了每一个Figure类的对象,在数据库存储时负责创建用于持久化 hash 的实际key
@Data
@RedisHash("figure")
public class Figure{
@Id
String id;
String name;
String level;
String attack;
String health;
String defense;
}
2.2 创建Dao层
你没有看错,就像mybatis一样,,你只需要设置一个Dao接口层,接下的交给组件来做。
创建一个Dao的接口类,对你来说,一个新接口唯一不同的就是Figure。
public interface PersonRepository extends CrudRepository<Figure, String> {
}
###2.3 服务层,进行增删改查
@Service
public class RedisService
@Autowired
PersonRepository repo;
public void basicCrudOperations() {
Person rand = new Person("rand", “feifei”,"1","1","1","1");
// redis保存/新增
repo.save(rand);
// redis查询
repo.findOne(rand.getId());
// redis同类对象数的统计
repo.count();
// redis删除
repo.delete(rand);
}
}
##2.4测试
你可以写Test,或者controller,快来构建你的redis数据持久化方案吧