redisson、jedis、lettuce优缺点对比
(1)redisson
优点:
实现了分布式特性和可扩展的 java 数据结构,适合分布式开发;
api线程安全;
基于netty框架的事件驱动的通信,可异步调用。
缺点:
api更抽象,学习使用成本高。
(2)jedis
优点:
提供了比较全面的redis操作特性的api
api基本与redis的指令一一对应,使用简单易理解。
缺点:
同步阻塞io;
不支持异步;
线程不安全。
(3)lettuce
优点:
线程安全;
基于netty 框架的事件驱动的通信,可异步调用;
适用于分布式缓存。
缺点:
api更抽象,学习使用成本高。
其中jedis是用的最普遍的(确实非常简单),特别是很多单体应用或者伪分布式应用等。
springboot整合redisson
1.添加maven依赖
<!-- redisson-springboot -->
<dependency>
<groupid>org.redisson</groupid>
<artifactid>redisson-spring-boot-starter</artifactid>
<version>3.11.4</version>
</dependency>
2.配置文件
spring:
redis:
host: 127.0.0.1
port: 6379
database: 0
timeout: 5000
3.添加配置类
import org.redisson.redisson;
import org.redisson.api.redissonclient;
import org.redisson.config.config;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.boot.autoconfigure.data.redis.redisproperties;
import org.springframework.boot.context.properties.enableconfigurationproperties;
import org.springframework.context.annotation.bean;
import org.springframework.context.annotation.configuration;
@configuration
public class redissonconfig {
@autowired
private redisproperties redisproperties;
@bean
public redissonclient redissonclient() {
config config = new config();
string redisurl = string.format("redis://%s:%s", redisproperties.gethost() + "", redisproperties.getport() + "");
config.usesingleserver().setaddress(redisurl).setpassword(redisproperties.getpassword());
config.usesingleserver().setdatabase(3);
return redisson.create(config);
}
}
4.代码测试(简单的存取)
import org.redisson.api.redissonclient;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.data.redis.core.stringredistemplate;
import org.springframework.web.bind.annotation.getmapping;
import org.springframework.web.bind.annotation.requestmapping;
import org.springframework.web.bind.annotation.restcontroller;
@restcontroller
@requestmapping("/redisson")
public class redissoncontroller {
@autowired
private stringredistemplate stringredistemplate;
@getmapping("/save")
public string save(){
stringredistemplate.opsforvalue().set("key","redisson");
return "save ok";
}
@getmapping("/get")
public string get(){
return stringredistemplate.opsforvalue().get("key");
}
}
以上就是springboot整合redisson的步骤(单机版)的详细内容,更多关于springboot整合redisson的资料请关注其它相关文章!
叶子落丶潇潇