• Spring Boot Starter开发


    项目结构:

    pom.xml

            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.16.18</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-autoconfigure</artifactId>
                <version>2.2.7.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-configuration-processor</artifactId>
                <version>2.2.7.RELEASE</version>
                <optional>true</optional>
            </dependency>
    

    UserProperties.java

    @Data
    @ConfigurationProperties(prefix = "com.run.user")
    public class UserProperties {
        private int id = 1;
        private String name = "ych";
        private String sex = "男";
    }
    
    

    UserService.java

    public class UserService {
        private UserProperties userProperties;
    
        public UserService(UserProperties prop) {
            this.userProperties = prop;
        }
    
        public void say() {
            System.out.println(userProperties.toString());
        }
    }
    
    

    UserServiceAutoConfiguration.java

    @Configuration
    @EnableConfigurationProperties(UserProperties.class)
    public class UserServiceAutoConfiguration {
        @Autowired
        private UserProperties userProperties;
    
        @Bean
        @ConditionalOnMissingBean(UserService.class)
        public UserService userService() {
            UserService userService = new UserService(userProperties);
            return userService;
        }
    }
    
    

    spring.factories

    org.springframework.boot.autoconfigure.EnableAutoConfiguration=
        com.run.UserServiceAutoConfiguration
    
  • 相关阅读:
    BZOJ 1101 莫比乌斯函数+分块
    BZOJ 2045 容斥原理
    BZOJ 4636 (动态开节点)线段树
    BZOJ 2005 容斥原理
    BZOJ 2190 欧拉函数
    BZOJ 2818 欧拉函数
    BZOJ 3123 主席树 启发式合并
    812. Largest Triangle Area
    805. Split Array With Same Average
    794. Valid Tic-Tac-Toe State
  • 原文地址:https://www.cnblogs.com/yinchh/p/13446312.html
Copyright © 2020-2023  润新知