- 浏览: 60049 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (93)
- java (3)
- ios (9)
- wp (15)
- android (0)
- js (1)
- 服务器 (0)
- db (0)
- linux (1)
- python (0)
- xcode (0)
- ide (2)
- maven (0)
- spring (0)
- sql (0)
- 第三方 (1)
- nexus (0)
- nginx (11)
- tomcat (0)
- jenkins (0)
- zookeeper (1)
- git (1)
- svn (0)
- uml (0)
- redis (4)
- activemq (1)
- flume (0)
- kafka (0)
- mysql (1)
- memcached (0)
- mybatis (0)
- mac (0)
- mongo (1)
- docker (6)
- cache (0)
- jvm (0)
- markdown (0)
- springboot (24)
- mycat (3)
- LTS (3)
- 运维 (0)
- opts (1)
- netty (1)
- tcc (0)
- ffmpeg (2)
- 直播 (6)
- cxf (0)
- nodejs (0)
- storm (0)
- elasticjob (0)
- php (0)
最新评论
application.properties
==========================================
redis.host=host
redis.port=6379
redis.timeout=2000
redis.password=pwd
#最大分配的对象数
redis.pool.maxTotal=1024
#最大能够保持idel状态的对象数
redis.pool.maxIdle=200
redis.pool.minIdle=10
#当池内没有返回对象时,最大等待时间
redis.pool.maxWait=1000
#当调用borrow Object方法时,是否进行有效性检查
redis.pool.testOnBorrow=true
==========================================
RedisConfiguration.java
==========================================
@Configuration
public class RedisConfiguration {
@Bean(name= "redis.pool.config")
public JedisPoolConfig jedisPoolConfig (@Value("${redis.pool.maxTotal}")int maxTotal,
@Value("${redis.pool.maxIdle}")int maxIdle,
@Value("${redis.pool.minIdle}")int minIdle,
@Value("${redis.pool.testOnBorrow}")boolean testOnBorrow,
@Value("${redis.pool.maxWait}")int maxWaitMillis) {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(maxTotal);
config.setMaxIdle(maxIdle);
config.setMaxIdle(minIdle);
config.setTestOnBorrow(testOnBorrow);
config.setMaxWaitMillis(maxWaitMillis);
return config;
}
@Bean(name= "redis.pool")
@Autowired
public JedisPool jedisPool(@Qualifier("redis.pool.config") JedisPoolConfig config,
@Value("${redis.host}")String host,
@Value("${redis.port}")int port,
@Value("${redis.timeout}")int timeout,
@Value("${redis.password}")String password) {
return new JedisPool(config, host, port, timeout, password);
}
}
==========================================
RedisClient.java
==========================================
@Component
public class RedisClient {
@Autowired
private JedisPool jedisPool;
public void set(String key, String value) throws Exception {
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
jedis.set(key, value);
} finally {
//返还到连接池
jedis.close();
}
}
public String get(String key) throws Exception {
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
return jedis.get(key);
} finally {
//返还到连接池
jedis.close();
}
}
}
==========================================
CityServiceImpl.java
==========================================
private static String key = "TEST_KEY_12381290380";
@Autowired
RedisClient redisClient;
public City findCityById(Long id) {
try {
System.out.println(redisClient.get(key));
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
public Long saveCity(City city) {
try {
redisClient.set(key, "SSSSS");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
==========================================
redis.host=host
redis.port=6379
redis.timeout=2000
redis.password=pwd
#最大分配的对象数
redis.pool.maxTotal=1024
#最大能够保持idel状态的对象数
redis.pool.maxIdle=200
redis.pool.minIdle=10
#当池内没有返回对象时,最大等待时间
redis.pool.maxWait=1000
#当调用borrow Object方法时,是否进行有效性检查
redis.pool.testOnBorrow=true
==========================================
RedisConfiguration.java
==========================================
@Configuration
public class RedisConfiguration {
@Bean(name= "redis.pool.config")
public JedisPoolConfig jedisPoolConfig (@Value("${redis.pool.maxTotal}")int maxTotal,
@Value("${redis.pool.maxIdle}")int maxIdle,
@Value("${redis.pool.minIdle}")int minIdle,
@Value("${redis.pool.testOnBorrow}")boolean testOnBorrow,
@Value("${redis.pool.maxWait}")int maxWaitMillis) {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(maxTotal);
config.setMaxIdle(maxIdle);
config.setMaxIdle(minIdle);
config.setTestOnBorrow(testOnBorrow);
config.setMaxWaitMillis(maxWaitMillis);
return config;
}
@Bean(name= "redis.pool")
@Autowired
public JedisPool jedisPool(@Qualifier("redis.pool.config") JedisPoolConfig config,
@Value("${redis.host}")String host,
@Value("${redis.port}")int port,
@Value("${redis.timeout}")int timeout,
@Value("${redis.password}")String password) {
return new JedisPool(config, host, port, timeout, password);
}
}
==========================================
RedisClient.java
==========================================
@Component
public class RedisClient {
@Autowired
private JedisPool jedisPool;
public void set(String key, String value) throws Exception {
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
jedis.set(key, value);
} finally {
//返还到连接池
jedis.close();
}
}
public String get(String key) throws Exception {
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
return jedis.get(key);
} finally {
//返还到连接池
jedis.close();
}
}
}
==========================================
CityServiceImpl.java
==========================================
private static String key = "TEST_KEY_12381290380";
@Autowired
RedisClient redisClient;
public City findCityById(Long id) {
try {
System.out.println(redisClient.get(key));
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
public Long saveCity(City city) {
try {
redisClient.set(key, "SSSSS");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
发表评论
-
springboot:condition
2017-07-26 11:10 361public class LinuxCondition imp ... -
springboot:tomcat启动
2017-07-20 15:02 9201.在pom.xml里设置 <packaging> ... -
springboot:shiro
2017-07-13 15:52 965第一次学习系统学习shiro 并将shiro集成到sprin ... -
springboot:upload
2017-07-06 10:25 750FileUploadConfiguration.java == ... -
springboot:servlet
2017-07-06 10:17 505Application.java ============== ... -
springboot:freemarker
2017-07-05 17:33 556pom.xml ======================= ... -
springboot:task
2017-07-05 12:11 442TaskPool.java ================= ... -
springboot:热部署
2017-07-05 11:23 357pom.xml: ====================== ... -
springboot:注解
2017-07-04 11:36 625@EnableAutoConfiguration注解 excl ... -
springboot:server属性配置
2017-07-04 10:05 750server配置 ====================== ... -
springboot:memcached
2017-07-03 17:23 926pom.xml ======================= ... -
springboot:health
2017-07-03 16:43 396<dependency> ... -
springboot:mongodb
2017-07-03 15:38 1562pom.xml ======================= ... -
springboot:quartz集群
2017-07-02 20:40 999pom.xml ======================= ... -
springboot:ControllerAdvice
2017-07-02 14:09 372全局异常拦截 //@ControllerAdvice(anno ... -
springboot:dubbo
2017-07-02 10:40 500server: ======================= ... -
springboot:amq
2017-07-01 22:20 467pom.xml ======================= ... -
springboot:mybatis&druid&pagehelper
2017-07-01 13:35 412=============================== ... -
springboot:logback
2017-06-30 16:20 553=============================== ... -
springboot:interceptor
2017-06-30 14:04 630IncpConfig.java 增加拦截器config 继承W ...
相关推荐
SpringBoot集成Redis是一个常见的开发需求,它使得应用可以利用Redis的高性能、内存存储特性进行数据缓存和快速访问。在本项目中,我们将探讨如何在SpringBoot应用中配置和使用Redis,以及如何利用Redis实现登录缓存...
2. **添加依赖**: 在`pom.xml`文件中添加Spring Data Redis和Redisson(或Jedis)的依赖,它们是SpringBoot与Redis交互的客户端库。 3. **RedisTemplate与StringRedisTemplate**: SpringBoot提供了这两个模板类,...
在本文中,我们将深入探讨如何在SpringBoot应用中集成Redis集群以及如何配置Redis服务器。首先,Redis是一个开源的、基于键值对的数据存储系统,常用于数据库、缓存和消息中间件。它以其高性能和易用性而备受青睐。...
SpringBoot可以通过`JedisCluster`或`Lettuce`客户端来访问Redis集群。 **五、高并发与分布式** 在高并发场景下,Redis可作为缓存服务器,减少数据库的访问压力。通过`@Cacheable`、`@CacheEvict`等注解,...
1. 添加依赖:在`pom.xml`或`build.gradle`文件中引入Spring Data Redis起步依赖,这将自动包含Spring Data Redis的实现库以及连接Redis所需的Jedis库。 2. 配置Redis:在`application.properties`或`application....
SpringBoot是一个流行的Java微服务框架,它简化了与各种技术栈的集成,包括Redis这样的高性能键值存储系统。本教程将深入探讨如何在SpringBoot应用中实现基于Redis的分布式锁。 首先,Redis之所以常被用作分布式锁...
在SpringBoot中集成Redis,我们通常会使用`spring-boot-starter-data-redis`依赖,它包含了连接Redis的 lettuce 或 jedis 客户端。在application.properties或yaml配置文件中,我们需要设置Redis的主机地址、端口、...
SpringBoot与Redis的整合是现代Java Web开发中的常见实践,特别是在构建高性能、高并发的应用时。Redis是一款开源的、基于键值对的数据存储系统,它支持多种数据结构,如字符串、哈希、列表、集合和有序集合,适用于...
【SpringBoot集成Redis (使用Jedis实现)】 在Spring Boot应用中集成Redis是一个常见的需求,因为Redis作为一个高性能的键值数据库,常用于缓存、消息队列等多种场景。本篇文章将介绍如何通过Jedis库来实现Spring ...
本篇文章将深入探讨如何在Spring Boot项目中集成Redis,并使用Jedis客户端进行操作。 首先,我们要在Spring Boot项目中引入Redis和Jedis的依赖。在`pom.xml`文件中,我们需要添加以下依赖: ```xml <groupId>org...
- 在`pom.xml`中添加Spring Data Redis和Jedis客户端的依赖。 - 配置`application.yml`或`application.properties`,包括Redis服务器的地址、端口、密码等信息。 2. **创建RedisTemplate Bean** - Spring Boot会...
SpringBoot整合Redis是现代Web应用中常见的数据存储与缓存技术结合方式,它极大地简化了在SpringBoot项目中配置和使用Redis的过程。Redis是一个高性能的键值对存储系统,适用于处理大量数据,常用于缓存、消息队列、...
这些依赖包括`spring-boot-starter-data-redis`,它包含了Spring Data Redis的基本功能,以及可能需要的`lettuce`或`jedis`客户端库,它们是连接Redis服务器的Java客户端。 ```xml <groupId>org.springframework....
在IT行业中,Spring Boot和Redis是两个非常重要的技术组件,它们在构建高效、可扩展的...在实际操作中,可以参考提供的`springboot-redis`压缩包文件,它可能包含了示例代码、配置文件和相关文档,帮助你快速上手实践。
Spring Boot可以通过Jedis或Lettuce客户端与Redis通信,创建一个分布式锁服务,使用`SETNX`尝试获取锁,如果成功则设置过期时间,确保锁在一定时间后自动释放。此外,为提高锁的健壮性,可以考虑使用`Redlock`算法,...
- Jedis:轻量级的Redis客户端,适合小型项目。它的API直接且简单,但功能相对较弱。 - Lettuce:功能更强大,支持Redis协议的最新特性,如 pub/sub 和事务。它的API设计更面向对象,更适合大型复杂应用。 6. **...
spring.redis.jedis.pool.max-active=8 spring.redis.jedis.pool.max-idle=8 spring.redis.jedis.pool.min-idle=0 ``` 现在我们已经配置好Spring Boot连接Redis的基本设置,下面将创建DAO层来操作Redis。首先定义一...
标题中的“springboot分布式自增id_javaredis_源码”表明我们关注的是一个使用Spring Boot实现的分布式系统中的自增ID生成方案,其中利用了Java Redis客户端库。在分布式环境中,确保全局唯一且顺序递增的ID是常见的...
你可以使用Jedis或Lettuce客户端库直接操作Redis API,或者利用Spring Data Redis的Reactive API进行响应式编程。 总结来说,SpringBoot整合Redis能够帮助我们构建高效、可扩展的Web应用程序。通过缓存机制,我们...