SpringBoot 第一篇:HelloWorld 跑起來

背景

      金融行業從業快十年,作爲銀行系開發人員來說開源框架了解不多非常正常,因爲銀行系的運行平臺,基本上不會採購小廠商集合開源框架自建的產品,競標的產品沒有幾十個成功案例,你也進不了這個門檻(有關係的除外,這個內幕都不說了 )。所以大多數開發人員(我不是大多數,得意.jpg)在銀行系接觸的更多的是各大金融行業服務商自己的產品,這些產品裏面也集成有像Spring、SpringBoot之類的框架,當然,你一個應用開發人員只需要寫寫業務邏輯,底層平臺實現是接觸不到的,會用就行了。

     平時工作也比較忙,每天客戶的需求要分析、要討論、要設計、要開發、要測試、要上線,相信做金融這行的人都明白,996雖然網上炒得不可開交,反正我們真的都是常態(心平氣和.jpg),真的就是這麼無限循環,哪有多餘的時間給你研究這些網上的五花八門的框架(休假除外)。

      最近來了新人,啥都不太懂,又和我諮詢SpringBoot框架的事,我也沒實際弄過,瞭解的都是一點概念上的東西,心想怕給人教壞了所以來實操一下,順便給人實際指導一下。

環境

開發工具: IntelliJ IDEA 2019.1.4  (不要跟我提Eclipse一樣好用,不接受,用了你纔有資格來討論)

基礎環境: jre 1.8.0_211

Maven:apache-maven-3.6.1

SpringBoot:2.1.7.RELEASE 目前最新的正式版

開發之前你要做的是

1、下載IDEA,並安裝好,並註冊。度娘幫你搞定

2、下載Maven對應的版本放到本地目錄,然後IDEA配置 File-> Settings –> Build,Execution –> Maven ,修改 User settings file 裏面爲自己的maven配置文件。初期可以選擇默認,我是由於用到了自己的私服所以有修改的必要性,有需要看私服的戳我之前的 Nexus3.0搭建私服上傳JAR包

開發步驟

1、新建項目 Create New Project,選擇 Spring Initializr –> 選擇SDK 這裏選擇在你電腦上安裝的JDK,如果沒有顯示則選擇下圖的2來添加自己的JDK目錄,點擊 Next 。

image


2、主要是填寫建立項目的相關資料,根據自己的實際需求來填,點擊Next 。

image

3、選擇Web- > Spring Web Starter, 這是通過SpringBoot建立WEB項目的模式。

image

4、Next之後輸入項目名稱,這個項目名稱就是最終顯示在你左側導航裏面的項目名。這裏保持不動。直接點擊 Finish 。

image

查看下 pom.xml 文件內容,都是默認的,項目自動都給你配置好了:

<?xml version="1.0" encoding="UTF-8"?>
<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>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.mm</groupId>
    <artifactId>work</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>work</name>
    <description>First Project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>


5、項目建立完成後,在com.mm.work包下新建 controller 包,新建一個類 HelloWorld如下:

package com.mm.work.controller;

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

@RestController
public class HelloWorld {
    @RequestMapping("/")
    public String test(){
        return "Hello World!";
    }
}


6、直接運行項目。

image

有沒有發現一些情況?web項目我的中間件沒有咋啓動了,web.xml沒配置,Spring 沒配置 ,全部都不需要配置了。

看啓動日誌能看到一些情況:

 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.1.7.RELEASE)

2019-08-08 11:14:04.343  INFO 10172 --- [           main] com.mm.work.WorkApplication              : Starting WorkApplication on Locus with PID 10172 (E:\Workspaces\work\target\classes started by Locus in E:\Workspaces\work)
2019-08-08 11:14:04.347  INFO 10172 --- [           main] com.mm.work.WorkApplication              : No active profile set, falling back to default profiles: default
2019-08-08 11:14:05.162  INFO 10172 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2019-08-08 11:14:05.178  INFO 10172 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2019-08-08 11:14:05.178  INFO 10172 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.22]
2019-08-08 11:14:05.267  INFO 10172 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2019-08-08 11:14:05.267  INFO 10172 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 870 ms
2019-08-08 11:14:05.400  INFO 10172 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2019-08-08 11:14:05.524  INFO 10172 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2019-08-08 11:14:05.529  INFO 10172 --- [           main] com.mm.work.WorkApplication              : Started WorkApplication in 1.628 seconds (JVM running for 2.565)
2019-08-08 11:14:13.708  INFO 10172 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2019-08-08 11:14:13.709  INFO 10172 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2019-08-08 11:14:13.714  INFO 10172 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 5 ms

系統啓動時自動全部給你做了,方便開發人員更需要關注的是業務邏輯而不是各種環境配置。

打開頁面訪問:http://localhost:8080/,項目就完成了。

image

單元測試

項目過程中很多自己單獨的業務邏輯需要測試,每次通過修改-重啓項目-驗證-再次修改-再次重啓項目驗證會嚴重影響單元測試進度。

項目的test包下有SpringBoot自動生成的測試類可以用來驗證自己的業務邏輯調用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章