栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java > SpringBoot

SpringBoot整合Redis开发RESTful API接口

SpringBoot 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot整合Redis开发RESTful API接口

开发环境

  SpringBoot版本:2.0.5.RELEASE、jdk版本:1.8+、Maven版本:3.5.4

项目框架
   ├── pom.xml
   ├── springbootreidsrestfulapi.iml
   ├── src
   │   ├── main
   │   │   ├── java
   │   │   │   └── com
   │   │   │└── jenkin
   │   │   │    └── springboot
   │   │   │ ├── App.java
   │   │   │ ├── controller
   │   │   │ │   └── UserController.java
   │   │   │ ├── pojo
   │   │   │ │   ├── RedisConfigBean.java
   │   │   │ │   └── User.java
   │   │   │ ├── redis
   │   │   │ │   └── RedisConfig.java
   │   │   │ └── service
   │   │   │     ├── UserService.java
   │   │   │     └── impl
   │   │   │  └── UserServiceImpl.java
   │   │   └── resources
   │   │└── application.properties

配置文件

在SpringBoot里的application.properties文件中配置Redis信息

# REDIS (RedisProperties)
# Database index used by the connection factory.
spring.redis.database=0

# Redis server host.
spring.redis.host=localhost

# Login password of the redis server.
spring.redis.password=

# Redis server port.
spring.redis.port=6379

# Maximum number of connections that can be allocated by the pool at a given time. Use a negative value for no limit.
spring.redis.lettuce.pool.max-active=8

# Maximum number of "idle" connections in the pool. Use a negative value to indicate an unlimited number of idle connections.
spring.redis.lettuce.pool.max-idle=8

# Maximum amount of time a connection allocation should block before throwing an exception when the pool is exhausted. Use a negative value to block indefinitely.
spring.redis.lettuce.pool.max-wait=-1ms

# Target for the minimum number of idle connections to maintain in the pool. This setting only has an effect if it is positive.
spring.redis.lettuce.pool.min-idle=0

# Shutdown timeout.
spring.redis.lettuce.shutdown-timeout=100ms

Redis有两种连接方式:一个是Jedis,另一个是Lettuce。它俩间的区别:使用Jedis,如果多线程使用同一个连接,线程时不安全的,需要使用连接池,为每一个Jedis实例分配一个连接;而使用Lettuce,当多线程连接同一个连接实例时,是线程安全的。
SpringBoot2.0以后,默认的连接方式是Lettuce,我这里使用的也是Lettuce,首先添加Redis包:



  org.springframework.boot
  spring-boot-starter-data-redis

如果使用的是Jedis连接,需要修改一下配置:


	org.springframework.boot
	spring-boot-starter-data-redis
	
		
			io.lettuce
			lettuce-core
		
	


	redis.clients
	jedis

建立连接

    
    @Bean
    public LettuceConnectionFactory connectionFactory() {
 LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory();
 lettuceConnectionFactory.setDatabase(redisConfigBean.getDatabase());
 lettuceConnectionFactory.setHostName(redisConfigBean.getHost());
 lettuceConnectionFactory.setPassword(redisConfigBean.getPassword());
 lettuceConnectionFactory.setPort(redisConfigBean.getPort());

 return lettuceConnectionFactory;
    }

效果演示
  • POST请求:设置ContentType=application/json,添加RequestBody中的内容,格式为Json格式
  • GET请求
  • PUT请求:设置ContentType=application/json,修改RequestBody中的内容,格式为Json格式
  • DELETE请求

代码地址

  https://github.com/JenkinWang/springboot-reids-restful-api

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号