07-SpringBoot的自动装配应用案例练习
2022/7/4 6:20:16
本文主要是介绍07-SpringBoot的自动装配应用案例练习,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
七、SpringBoot的自动装配应用案例练习(结合Redis)
7.1、案例描述
- 需求
- 自定义redis-starter。要求当导入redis坐标时,SpringBoot自动创建Jedis的Bean
7.2、案例实现
7.2.1、实现步骤
-
1、创建工程导入依赖
-
<?xml version="1.0" encoding="UTF-8"?> <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>org.coolman</groupId> <artifactId>SpringBoot-Redis-Test</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> </properties> <parent> <artifactId>spring-boot-parent</artifactId> <groupId>org.springframework.boot</groupId> <version>2.5.0</version> </parent> <!--依赖管理--> <dependencies> <!--导入Spring的容器--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <!--导入jedis--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.3</version> </dependency> <!--SpringBoot测试启动器--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> </dependencies> </project>
-
-
2、编写jedis属性配置类
-
package com.coolman.config; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; @ConfigurationProperties("myredis") @Data public class RedisProperties { private Integer port; private String host; }
-
-
3、编写application.yml,编写redis的配置属性
-
myredis: host: 127.0.0.1 port: 6379
-
-
4、编写jedis自动配置类
-
package com.coolman.config; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import redis.clients.jedis.Jedis; @EnableConfigurationProperties(RedisProperties.class) //加载 redis属性配置 @Configuration //声明是一个配置类 public class RedisConfiguration { @Autowired private RedisProperties redisProperties; @Bean public Jedis getJedis(){ return new Jedis(redisProperties.getHost(), redisProperties.getPort()); } }
-
-
5、执行测试案例
-
package com.coolman; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import redis.clients.jedis.Jedis; @Slf4j @SpringBootTest public class AppTest { @Autowired private Jedis jedis; @Test public void test01() { jedis.set("name", "coolman"); log.info("从redis读取到的数据:" + jedis.get("name")); } }
-
-
测试结果
7.3、总结
- 自定义启动器的步骤
- ①、导入依赖
- ②、编写属性配置类
- ③、编写application.yaml配置文件,编写redis的配置属性
- ④、编写自动配置类
这篇关于07-SpringBoot的自动装配应用案例练习的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?