ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

07-SpringBoot的自动装配应用案例练习

2022-07-04 03:00:06  阅读:161  来源: 互联网

标签:装配 07 boot redis springframework jedis import org 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,boot,redis,springframework,jedis,import,org,SpringBoot
来源: https://www.cnblogs.com/OnlyOnYourself-lzw/p/16441531.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有