一、獲取Springboot版本信息
1、通過pom.xml文件獲取版本信息
<properties> <java.version>1.8</java.version> <spring-boot.version>1.5.22.RELEASE</spring-boot.version> </properties>
2、通過Java代碼獲取版本信息
@SpringBootApplication public class DemoApplication implements CommandLineRunner { @Autowired private Environment environment; public static void main(String[] args) { SpringApplication app = new SpringApplication(DemoApplication.class); app.run(args); } @Override public void run(String... args) throws Exception { System.out.println("Spring Boot version: " + environment.getProperty("spring-boot.version")); } }
二、獲取配置文件屬性值
1、通過@Value註解獲取單個屬性值
@Service public class MyService { @Value("${my.property}") private String myProperty; public String getMyProperty() { return myProperty; } }
2、通過@ConfigurationProperties註解獲取多個屬性值
@ConfigurationProperties(prefix = "my") public class MyProperties { private String property1; private String property2; public String getProperty1() { return property1; } public void setProperty1(String property1) { this.property1 = property1; } public String getProperty2() { return property2; } public void setProperty2(String property2) { this.property2 = property2; } } @Service public class MyService { private MyProperties properties; @Autowired public MyService(MyProperties properties) { this.properties = properties; } public MyProperties getProperties() { return properties; } }
三、獲取Bean對象
1、通過@Autowired註解獲取Bean對象
@Service public class MyService { @Autowired private MyObject myObject; public MyObject getMyObject() { return myObject; } }
2、通過@Bean註解創建Bean對象
@Configuration public class MyConfiguration { @Bean public MyObject myObject() { return new MyObject(); } }
3、通過@ConditionalOnClass註解創建Bean對象
@Configuration @ConditionalOnClass(MyOtherObject.class) public class MyConfiguration { @Bean public MyObject myObject() { return new MyObject(); } }
四、獲取Springboot啟動器依賴
1、通過pom.xml文件獲取依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>{version}</version> </dependency>
2、通過Maven倉庫搜索獲取依賴信息
訪問地址:https://mvnrepository.com/app/search?q=spring-boot-starter-web
3、通過Spring Initializr獲取依賴信息
訪問地址:https://start.spring.io/
五、獲取Springboot啟動時間
1、通過SpringApplicationRunListener獲取啟動時間
public class MyApplicationRunListener implements SpringApplicationRunListener { private final long startTime = System.currentTimeMillis(); public MyApplicationRunListener(SpringApplication application, String[] args) { } @Override public void starting() { } @Override public void started(ConfigurableApplicationContext context) { System.out.println("Spring Boot started in " + (System.currentTimeMillis() - startTime) + " ms"); } @Override public void running(ConfigurableApplicationContext context) { } @Override public void failed(ConfigurableApplicationContext context, Throwable exception) { } } public class MyApplicationRunListenerFactory implements SpringApplicationRunListenerFactory { @Override public SpringApplicationRunListener createSpringApplicationRunListener(SpringApplication application, String[] args) { return new MyApplicationRunListener(application, args); } } @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication app = new SpringApplication(DemoApplication.class); app.addListeners(new MyApplicationRunListenerFactory()); app.run(args); } }
2、通過@EventListener註解獲取啟動時間
@SpringBootApplication public class DemoApplication { @EventListener(ApplicationReadyEvent.class) public void afterStartup() { Instant endTime = Instant.now(); Instant startTime = DemoApplication.startTime; Duration duration = Duration.between(startTime, endTime); System.out.println("Spring Boot started in " + duration.toMillis() + " ms"); } public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
原創文章,作者:ZMURC,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/331714.html