spring cloud教程之使用spring boot建立一個應用
《7天學會spring cloud》第一天,熟悉spring boot,並使用spring boot建立一個應用。
Spring Boot是Spring團隊推出的新框架,它所使用的核心技術還是Spring框架,主要是Spring 4.x,所以如果熟悉spring 4的人,能夠更快的接受和學會這個框架。Spring boot可以看做是在spring框架基礎上再包了一層,這一層包含方便開發者進行配置管理和快速開發的模組,以及提供了一些開箱即用的工具,比如監控等。
Spring Boot官方文件有中文翻譯版:
https://github.com/qibaoguang/Spring-Boot-Reference-Guide
要實現一個spring boot開發環境和傳統的應用沒有區別,這裡用的是:
IDE:myeclipse 10
JDK:jdk1.7
WINDOWS:mvn 3
在桌面windows環境裡需要單獨安裝方便我們使用命令列進行打包和操作。Eclipse環境裡也需要安裝mvn外掛,當然如果使用的是myeclipse,那麼自帶的mvn環境就足夠了。以下是建立spring boot helloworld應用的步驟。注意這是一個web應用,使用了嵌入式的tomcat。
1) 首選建立一個最簡單的maven工程,如下圖:
這個應用只有一個類,編寫程式碼如下:
package cloud.simple.hello; import org.springframework.boot.*; import org.springframework.boot.autoconfigure.*; import org.springframework.stereotype.*; import org.springframework.web.bind.annotation.*; @Controller @SpringBootApplication public class SampleController { @ResponseBody @RequestMapping(value = "/") String home() { return "Hello World!"; } public static void main(String[] args) throws Exception { SpringApplication.run(SampleController.class, args); } }
@SpringBootApplication相當於@Configuration、@EnableAutoConfiguration和 @ComponentScan,你也可以同時使用這3個註解。其中@Configuration、@ComponentScan是spring框架的語法,在spring 3.x就有了,用於程式碼方式建立配置資訊和掃描包。@EnableAutoConfiguration是spring boot語法,表示將使用自動配置。你如果下載了spring boot原始碼,就會看到spring boot實現了很多starter應用,這些starter就是一些配置資訊(有點類似於docker,一組環境一種應用的概念),spring boot看到引入的starter包,就可以計算如果自動配置你的應用。
2) 配置pom.xml
這個應用不需要配置檔案,寫完class後就可以直接配置pom.xml檔案了,當然先配置pom.xml也一樣。Pom檔案配置如下:
<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"> <modelVersion>4.0.0</modelVersion> <!-- spring boot基本環境 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.1.RELEASE</version> </parent> <groupId>spring.boot</groupId> <artifactId>cloud-simple-helloword</artifactId> <version>0.0.1</version> <packaging>jar</packaging> <name>cloud-simple-helloword</name> <dependencies> <!--web應用基本環境配置 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
pom檔案配置完,你就可以執行應用了,點選F11,或者在SampleController類右鍵“Run Java Application”就可以看到應用啟動並運行了。
此時在瀏覽器輸入http://localhost:8080/,你會看到helloworld字樣,這是一個web應用,使用了嵌入式的tomcat。
在pom配置中我們僅僅使用了spring-boot-starter-web依賴,spring boot會根據此依賴下載相關jar包並初始化基本的執行環境,比如說繫結埠8080等。
spring boot封裝所有配置資訊為鍵值型別,你想改變預設配置,只需要嚮應用傳入這個鍵值對就可以,比如我們想改變繫結埠為8081,那麼你在main方法裡傳入“—server.port=8081”即可,或者乾脆使用:
SpringApplication.run(SampleController.class, "--server.port=8081");
3) 部署spring boot應用
要部署執行spring boot應用,首選要打包spring boot應用,你在pom檔案中看到的spring-boot-maven-plugin外掛就是打包spring boot應用的。
進入工程目錄執行mvn package,如:
D:\cloud-simple-helloword>mvn package
打包過後就可以進入target目錄使用java原生命令執行這個應用了。
D:\cloud-simple-helloword\target>java -jar cloud-simple-helloword-0.0.1.jar --server.port=8081
如此,你就看到一個基於jar包的web應用啟動了。
Spring boot提供的一些開箱即用的應用非常容易使用,比如監控,你只需要在pom檔案中引入:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
引入之後,spring boot是預設開啟監控的,執行應用你可以在瀏覽器中輸入:
就可以看到預設的監控資訊了:
{"status":"UP","diskSpace":{"status":"UP","total":161067397120,"free":91618398208,"threshold":10485760}}
資訊包括程式執行狀態以及基本的磁碟資訊。
相關推薦
spring cloud教程之使用spring boot建立一個應用 《7天學會spring cloud》
《7天學會spring cloud》第一天,熟悉spring boot,並使用spring boot建立一個應用。 Spring Boot是Spring團隊推出的新框架,它所使用的核心技術還是Spring框架,主要是Spring 4.x,所以如果熟悉spring 4的人,能夠更快的接受和學會
spring cloud教程之使用spring boot建立一個應用
《7天學會spring cloud》第一天,熟悉spring boot,並使用spring boot建立一個應用。 Spring Boot是Spring團隊推出的新框架,它所使用的核心技術還是Spring框架,主要是Spring 4.x,所以如果熟悉spring 4的人,能夠更快的接受和學會這個框架
[Spring Boot] 一、使用Spring Boot建立一個應用
最近要做一個客戶端的活,準備使用輕量級的Spring Boot來完成,記錄整個Spring Boot學習過程 需要準備的內容 JDK 1.8 or later 一個IDE,我習慣於使用Intellij Idea Mave
【Java Spring Cloud 實戰之路】新增一個SpringBootAdmin監控
# 0. 前言 在之前的幾章中,我們先搭建了一個專案骨架,又搭建了一個使用nacos的gateway閘道器專案,閘道器專案中並沒有配置太多的東西。現在我們就接著搭建在Spring Cloud 微服務中另一個重要的專案 - Spring boot admin. # 1. Spring Boot Adm
Spring Cloud 筆記之Spring cloud config client
觀察者模式它的資料的變化是被動的。 觀察者模式在java中的實現: package com.hxq.s
Spring Cloud 系列之 Spring Cloud Stream
Spring Cloud Stream 是訊息中介軟體元件,它集成了 kafka 和 rabbitmq 。本篇文章以 Rabbit MQ 為訊息中介軟體系統為基礎,介紹 Spring Cloud Stream 的使用。如果你沒有用過訊息中介軟體,可以到 RabbitMQ 的官網看一下,或者參考這個 http
[Odoo12基礎教程]之第一篇-建立Todo應用
宣告: 本教程基於 Ruter 老師的 [Odoo基礎教程系列] ,Ruter老師教程的連結地址為:Odoo基礎教程系列 。 至於為什麼已經有了Ruter老師的教程,還要自己再搬移一份呢?是基於一下幾點考慮的: 1.雖然 Ruter 老師的教程可以說已經非常詳細了,但因為字數限制難
Spring Boot學習筆記之使用Spring Boot建立一個簡單的web專案(工具使用IntelliJ IDEA)
新建Maven專案 1.File --> New Project --> Maven --> Next 2.填寫專案資訊,完成之後點選Next,然後點選Finish 3.專案建好之後如下圖所示 修改pom檔案中的配置資訊 <?xml version
Spring Boot建立一個可以部署的war檔案
1.第一步:提供一個SpringBootServletInitializer的子類並重寫configure方法。Spring Framework的Servlet 3.0支援並允許您在由Servlet容器啟動時配置您的應用程式。通常,您需要更新您的應用程式的主類去繼承Spri
Spring Boot教程與Spring Cloud教程
本專案內容為Spring Boot教程程式樣例。快速入門工程配置Web開發資料訪問事務管理chapter3-3-1:使用事務管理chapter3-3-2:[分散式事務(未完成)]其他內容日誌管理安全管理chapter4-3-2:[使用Spring Session(未完成)]快
【Java Spring Cloud 實戰之路】- 使用Nacos和閘道器中心的建立
# 0. 前言 在上一節中,我們建立了一個專案架構,後續的專案都會在那個架構上做補充。 # 1. Nacos ## 1.1 簡介 Nacos可以用來發現、配置和管理微服務。提供了一組簡單易用的特性集,可以快速實現動態服務發現、服務配置、服務元資料及流量管理。 Nacos用來更敏捷和容易地構建、交付和
Spring Cloud教程合集
als logs pos 什麽是 資料 xiv 繼續 fonts 負載均衡策略 Spring Cloud系列終於搞完啦! 這一系列是筆者的學習筆記,原書之前也給小夥伴們推薦過 《Spring Cloud微服務實戰》 原書采用了較老的Brixton版,筆者在學習的過程中,
spring cloud(二):spring boot技術總結
java spring boot 註解 1、spring boot簡化Spring應用的初始搭建以及開發過程,節省了開發成本及時間,提高了開發人員的生產力2、含有諸多開箱即用微服務功能,可以和spring cloud聯合部署項目能夠獨立運行,提供了應用監控,能夠與微服務聯合部署。3、spring
Spring Cloud實踐之集中配置Spring-config
serve 啟動 gap rop project 自己的 HA sna tst 將一個系統中各個應用的配置文件集中起來,方便管理。 import org.springframework.boot.SpringApplication; import org.spri
Spring Cloud微服務實戰教程|Spring Cloud教程
Spring CloudSpring Cloud微服務實戰教程網盤地址:https://pan.baidu.com/s/1nN_tpaUuIhWIHTTtk1k9lg 密碼:9obv備用地址(騰訊微雲):https://share.weiyun.com/5Sc3eEK 密碼:q6cmrk 微服務架構已是當下最
spring cloud eureka之服務端
eureka一、依賴 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-start
spring cloud eureka之客戶端
eureka client 依賴 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sprin
Spring 基礎教程之四:JavaBean基本配置詳解
一:xml 裝配JavaBean屬性含義: 1.id:指定該Bean 的唯一標識。 2.class:指定該Bean 的全限定名。 3.name:為該Bean 指定一到多個別名。多個別名可以用“,”和“;”分割。
Spring Cloud探索之旅(二)——Spring Cloud Eureka
2.1 什麼是服務註冊與發現 在服務治理框架中,通常都會構建一個註冊中心,每個服務單元向註冊中心登記自己提供的服務,包括服務的主機與埠號、服務版本號、通訊協議等一些附加資訊。註冊中心按照服務名分類組織服務清單,同時還需要以心跳檢測的方式去監測清單中的服務是否可用,若不可用需要從服務清單中剔除,以
【Spring Cloud Finchley.SR + Spring Boot 2.0.6】 Eureka叢集
新增Eureka認證後,無法互相註冊。 官方文件:https://cloud.spring.io/spring-cloud-static/Finchley.SR2/single/spring-cloud.html#_securing_the_eureka_server 原因:將sp