1. 右击

     

自定义springboot的starter_xml

 

     2. 创建一个maven项目

自定义springboot的starter_spring_02

 3. 配置项目信息

自定义springboot的starter_spring_03

4. 项目结构

自定义springboot的starter_spring_04

/**
* redis enable
* @author xulihui
* @date 2020/4/27 23:44
*/
@Documented
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Import(RedisAutoConfiguration.class)
public @interface EnableRedis {

}

 

package com.collmall.autoconfigure;

import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import redis.clients.jedis.Jedis;

/**
* @author xulihui
* @date 2020/4/27 23:19
*/
@ConditionalOnClass(Jedis.class)
@EnableConfigurationProperties(RedisPorperties.class)
public class RedisAutoConfiguration {

@Bean
@ConditionalOnMissingBean
public Jedis jedis (RedisPorperties redisPorperties) {
return new Jedis(redisPorperties.getHost(),redisPorperties.getPort());
}
}
package com.collmall.autoconfigure;

import org.springframework.boot.context.properties.ConfigurationProperties;

/**
* @author xulihui
* @date 2020/4/27 23:13
*/
@ConfigurationProperties(prefix = "redis")
public class RedisPorperties {

private Integer port;

private String host;

public Integer getPort() {
return port;
}

public void setPort(Integer port) {
this.port = port;
}

public String getHost() {
return host;
}

public void setHost(String host) {
this.host = host;
}

}

application.properties  

redis.port=6379
redis.host= r-2zeto9ys0yr.redis.rds.aliyuncs.com
redis.password= szHSwWtV2yvVcg6

pom.xml

<?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>
<packaging>jar</packaging>
<groupId>com.collmall</groupId>
<artifactId>redis-starter</artifactId>
<version>1.0-SNAPSHOT</version>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.2.RELEASE</version>
</parent>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.2.0</version>
</dependency>
</dependencies>
</project>

源码地址: ​​https://gitee.com/mrxlh/redis-starter.git​