SpringBoot四大组件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

package com.gufang.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Enable Gufang DevTool for spring boot application
 * 
 * @author chen.qixiang
 * @version 1.0.0
 * @since 1.0.0
 */
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface EnableGufangConfiguration {

}

在这里插入图片描述
在这里插入图片描述

package com.gufang.boot;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.gufang.annotation.EnableGufangConfiguration;

@Configuration
@ConditionalOnBean(annotation = EnableGufangConfiguration.class)
@EnableConfigurationProperties(GufangProperties.class)
public class GufangConfiguration {
	  @Autowired
	  private GufangProperties properties;

	  @Bean
	  public Object createBean()
	  {
		  System.out.println("Gufang="+properties);
		  return new Object();
	  }
}

在这里插入图片描述

package com.gufang.boot.context.event;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.context.event.ApplicationEnvironmentPreparedEvent;
import org.springframework.context.ApplicationListener;

import com.gufang.annotation.EnableGufangConfiguration;
public class GufangBannerApplicationListener implements 
	ApplicationListener<ApplicationEnvironmentPreparedEvent>
{
	public static String gufangLogo =
	        "  ###################################################################################### \n" +
            "  ########        #             #                                               ######## \n" +
            "  ########   ########       #########           ### #   #   ####  #####  #####  ######## \n" +
            "  ########      #             #                #    #   #   ##    #      #   #  ######## \n" +
            "  ########    #####          ######            # #  #   #   #  #  #####  #####  ######## \n" +
            "  ########   #   #          #    #               #  #   #    # #  #      # #    ######## \n" +
            "  ########  #####          #    #             # #   # # #   ####  #####  #   #  ######## \n" +
            "  ###################################################################################### \n" +
            "                                                             \n" +
            "\n";
	public static String LINE_SEPARATOR = System.getProperty("line.separator");
	@Override
	public void onApplicationEvent(ApplicationEnvironmentPreparedEvent event) {
		System.out.println(buildBannerText());
	}
	private String buildBannerText() {
		StringBuilder bannerTextBuilder = new StringBuilder();
		bannerTextBuilder.append(LINE_SEPARATOR).append(gufangLogo).append(" :: Gufang ::        (v1.0.0)")
		.append(LINE_SEPARATOR);
		return bannerTextBuilder.toString();
	}
}

在这里插入图片描述
spring.factories

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.gufang.boot.GufangConfiguration

org.springframework.context.ApplicationListener=\
com.gufang.boot.context.event.GufangBannerApplicationListener

spring.provides

provides: gufang-spring-boot-starter

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 10
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值