淺出Spring Boot系列(一)Helloword及基本概念

前言

最近在學(xué)習(xí)Spring Boot,特開一個系列來記錄學(xué)習(xí)過程中遇到的坑。俗語講深入淺出深入我水平尚有限,恐難以做到,故且叫做淺出Spring Boot

本位為該系列第一篇文章,用于構(gòu)建一個簡易的Hello World

原文見個人博客

目錄

工具及相關(guān)環(huán)境

  • Intellij JDEA
  • JDK
  • Gradle

Helloworld

Intellij IDEA中新建一個Gradle工程,并購選JavaWeb,后面都是一些常規(guī)項目,填寫GroupId等,不在贅述。

初始項目目錄結(jié)構(gòu)如下:

目錄結(jié)構(gòu)

我們在src/main目錄下添加java、resources兩個目錄,分別用于存放我們的源代碼以及配置信息等。

build.gradle

這是一個官方教程中的一個build文件,這里直接用即可。


plugins {
    id 'org.springframework.boot' version '1.5.2.RELEASE'
    id 'java'
}



jar {
    baseName = 'bookstore'
    version =  '0.0.1-SNAPSHOT'
}

repositories {
    jcenter()
}

dependencies {
    compile("org.springframework.boot:spring-boot-starter-web")
    testCompile("org.springframework.boot:spring-boot-starter-test")
}

配置完成后,點擊Gradle面板左上角藍色圖標,即可自動下載相關(guān)包。

Application

src/main/java目錄下新建Application.java文件:

import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;

import java.util.Arrays;

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Bean
    public CommandLineRunner commandLineRunner(ApplicationContext ctx) {
        return args -> {

            System.out.println("Let's inspect the beans provided by Spring Boot:");

            String[] beanNames = ctx.getBeanDefinitionNames();
            Arrays.sort(beanNames);
            for (String beanName : beanNames) {
                System.out.println(beanName);
            }

        };
    }

}

再添加HelloworldController.java:

import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RequestMapping;

@RestController
public class HelloController {

    @RequestMapping("/")
    public String index() {
        return "Greetings from Spring Boot!";
    }

}

到這里,一個簡單的Restful 風格的微服務(wù)就完成了。

Run

打開Gradle的面板,雙擊圖中的bootRun即可將項目運行起來。

也可以通過在build.gradle文件同目錄下運行gradle bootRun命令。

這時訪問http://localhost:8080/即可看到運行結(jié)果:

Package

通過雙擊Gradle面板中的build->build,或者運行'gradle build'命令,即可將項目打包成jar文件,文件位于./build/libs/[baseName+version].jar。這個就可以用于部署到測試或者生產(chǎn)環(huán)境了。

基本流程大致如此。

基本概念以及碰到的坑

Spring Boot極大的簡化了java開發(fā)時需要的一大堆配置文件,按照預(yù)定高于配置的理念,盡量做到開箱即用,所以用于微服務(wù)的構(gòu)建相比也是極好的。

通過與Spring Cloud、Docker配合使用,可以搭建相對完善的微服務(wù)體系。

爬坑

  • 創(chuàng)建的Gradle項目,默認會在build.gradle文件中添加groupversion內(nèi)容,這些是需要去掉的,否則在運行時會由于configure error而無法啟動
  • 通過雙擊bootRun方式運行spring boot時,最后會一直停留在上圖所示的狀態(tài),但其實程序已經(jīng)運行起來了??梢酝ㄟ^localhost訪問到。

參考穩(wěn)定

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容