Spring Boot應用程式有哪些功能?

banq發表於2018-08-22
Spring Boot應用功能有:

1. Spring boot自動執行許多配置。所以開發速度更快。

2. Spring Boot預設埠8080,支援嵌入式Tomcat,Jetty和Undertow伺服器的

3. 使用spring boot我們可以將配置放在外部,可以在不同的環境中使用相同的應用程式程式碼,可以使用屬性檔案YAML檔案,環境變數和命令列引數來外部化配置:
比如application-leader.properties:

server.port=8080

# leader node channels
spring.cloud.stream.bindings.leaderRequests.destination=${as}-requests
spring.cloud.stream.bindings.leaderReplies.destination=${as}-replies
spring.cloud.stream.bindings.leaderReplies.group=${as}-replies
spring.cloud.stream.bindings.leaderReplies.durableSubscription=true
<p class="indent">

application-worker.properties配置:

server.port=0

# worker node channels
spring.cloud.stream.bindings.workerReplies.destination=${as}-replies
spring.cloud.stream.bindings.workerRequests.destination=${as}-requests
spring.cloud.stream.bindings.workerRequests.group=${as}-requests
spring.cloud.stream.bindings.workerRequests.durableSubscription=true

<p class="indent">

程式碼中如果用worker配置:

@Configuration
@Profile(Profiles.WORKER)
class WorkerConfiguration {
<p class="indent">


4. Spring Boot使用Commons Logging進行所有內部日誌記錄,但我們也可以實現Logging。預設情況下使用Logback。

5. Spring Boot為Redis,MongoDB,Neo4j,Elasticsearch,Solr和Cassandra NoSQL技術提供自動配置。

6. Spring boot 自動配置了JMS必要的基礎結構,方便傳送和接收訊息。

public interface LeaderChannels {

	@Output
	MessageChannel leaderRequests();

	@Input
	MessageChannel leaderReplies();
}
<p class="indent">

程式碼向這兩個訊息佇列之一傳送訊息:

@Configuration
@Profile(Profiles.LEADER)
class LeaderConfiguration {

	// <1>
	@Bean
	ActivityBehavior gateway(LeaderChannels channels) {
		return new ReceiveTaskActivityBehavior() {

			@Override
			public void execute(ActivityExecution execution) throws Exception {

				Message<?> executionMessage = MessageBuilder
						.withPayload(execution.getId())
						.build();

				channels.leaderRequests().send(executionMessage);
			}
		};
	}
<p class="indent">


7. Spring引導提供@EnableAutoConfiguration,能讓spring boot根據我們新增的JAR依賴項配置spring應用程式。

8. Spring提供@SpringBootApplication註釋,則的組合@Configuration,@EnableAutoConfiguration和@ComponentScan註解。 @SpringBootApplication=@Configuration + @EnableAutoConfiguration + @ComponentScan

9. Spring boot使用SpringApplication.run()java main方法來引導應用程式。

10. Spring Boot提供了一個@SpringBootTest測試Spring啟動應用程式的註釋。

相關文章