zoukankan      html  css  js  c++  java
  • 自己写一个spring boot starter

    (1) 新建项目
    项目名:formatter-spring-boot-starter

    (2) 定义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">
        <parent>
            <artifactId>first-app-by-gui</artifactId>
            <groupId>thinking-in-spring-boot</groupId>
            <version>0.0.1-SNAPSHOT</version>
        </parent>
        <modelVersion>4.0.0</modelVersion>
    
        <artifactId>formatter-spring-boot-starter</artifactId>
    
        <dependencies>
            <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
                <version>2.3.4.RELEASE</version>
    <!--            细节,防止依赖传递,避免其他项目引用该项目之后版本冲突-->
                <optional>true</optional>
            </dependency>
    
        </dependencies>
    </project>
    

    (3) 写一个接口和实现

    public interface Formatter {
    
        String format(Object object);
    }
    
    public class DefaultFormatter implements Formatter{
    
        @Override
        public String format(Object object) {
            return String.valueOf(object);
        }
    }
    
    

    (4) 配置类

    @Configuration
    public class FormatterAutoConfiguration {
    
        @Bean
        public Formatter defaultFormatter(){
            return new DefaultFormatter();
        }
    }
    
    

    (5) 配置文件
    写一个META-INF/spring.factories文件,内容如下:

    org.springframework.boot.autoconfigure.EnableAutoConfiguration=thinking.in.spring.boot.config.FormatterAutoConfiguration
    

    完成之后如果需要使用就引入这个项目,就可以直接使用里面的接口了.

  • 相关阅读:
    软件体系架构会议纪要
    漫谈架构之阅读笔记02
    漫谈架构之阅读笔记01
    学习进度报告01
    以《淘宝网》为例,描绘质量属性的六个常见属性场景。
    软件架构师的工作方式
    软件体系架构课堂测试02
    系统安全——访问控制
    信息安全技术——物理环境与设备安全、虚拟专用网
    信息安全技术——防火墙、入侵检测技术
  • 原文地址:https://www.cnblogs.com/javammc/p/13893698.html
Copyright © 2011-2022 走看看