日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

springboot静态网页放哪里_STEP4.1 第一个SpringBoot项目

發布時間:2025/10/17 javascript 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot静态网页放哪里_STEP4.1 第一个SpringBoot项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在上一節STEP3.2 服務器對于HTTP請求的處理流程中,我們學會了后端服務相關的理論知識。

接下來,我們就要落實到代碼層面。

沒有需求何來的代碼開發?正所謂需求(DDL)是第一生產力,為了讓我們在學習過程中不要冒出“學這個有什么用?”的奇怪想法,我們先來擬訂一個需求,然后根據這個需求開展我們相關的學習,以及最后的代碼開發。

我們假設我們的老板有如下三個需求:

  • 用戶可以通過賬號密碼登錄
  • 已經登錄的用戶可以查看全用戶名列表(沒登錄就不能看)
  • 用戶可以注銷
  • 為了這三個需求,我們需要以怎樣的順序,開展哪些內容的學習呢?

  • 學會如何搭建、配置、啟動、訪問服務(本節內容)
  • 為了正常使用我們需要的第三方包,我們需要理解SpringBoot是如何管理依賴的(STEP4.2 認識pom.xml)
  • 理解會話的概念,學會如何保持登錄狀態,并進行相應代碼實踐()
  • 寫代碼搭建項目login-demo,逐步完成需求()
  • 最后,我們還會利用Spring的特性(SpringBoot內置Spring)來優化一下我們的項目:

    • 理解Spring IOC特性()
    • 使用我們的IOC特性來為login-demo做代碼優化()

    那么接下來,就開始我們的第一步吧!


    在這一節中,我們要用代碼來實踐最簡單的后臺處理。

    其實也就是我們學任何語言or框架都首先會有的 Hello World!


    一、新建SpringBoot項目

    1.新建項目,選擇Spring Initializr

    2.設置項目基本信息

    3.勾選依賴界面。我們勾選Web→Spring Web。(依賴是什么?我們到4.2節再說)

    4.指定我們的項目名和項目路徑

    5.此時可以看到idea為我們創建的項目結構

    簡單說一說我們SpringBoot的項目結構,如圖:

    紅色框:java文件夾

    在這個文件夾中,主要寫我們的業務代碼。包括controller、service、dao,還有各種工具類等等,以及我們的程序主入口:xxxApplication。

    藍色框:resources文件夾

    在這個文件夾中,有我們的全局配置文件application.properties,一般我們也會放一些其他的配置文件,比如mapper.xml(暫時不用著急在意它是什么)等等。如果是前后端不分離項目,在resources文件夾中還會放一些靜態頁面資源(.html等)。

    綠色框:test文件夾

    在這個文件夾中,主要寫我們的軟件測試代碼。這個文件夾基本上不在我們專欄研究的范圍內。

    橙色框:pom.xml

    這是我們管理項目依賴的文件夾,具體解釋請看4.2節。在這一節中我們并不會用到它。


    二、修改application.properties配置文件

    首先,application.properties配置文件是什么?

    這是我們SpringBoot項目的默認配置文件,在這個文件里可以設置我們的服務啟動端口、數據庫連接信息(連到哪個數據庫)、資源文件路徑(比如mybatis的xml路徑)、編碼、時區等等等等,很多適用于整個項目的配置都會在這里寫。

    不要想得太復雜,我們從本質的角度來思考一下:

    .properties其實也就是一種文件格式,完全可以用我們的txt文本文檔或者.xlsx表格文檔等等來替代。然后我們的程序讀取這個文檔,比如讀取這個文檔里的數據庫配置信息,那么我們的程序也就知道應該去訪問哪個數據庫。

    當然,我們也完全可以丟棄配置文件,把數據庫配置等等信息直接寫到代碼里。但這就產生了一個硬編碼的問題,當我們要修改配置的時候就要回到代碼去修改,非常不便。

    不僅是SpringBoot,各種流行的框架都會考慮這一點,把全局配置信息分離出來,放到一個或幾個單獨文件里。

    application.properties就是這樣的文件。

    但是一般應用場景中,我們會用.yml來替代.properties文件。簡單舉個例子講一下.properties和.yml的區別:

    對于同樣的數據庫配置:

    .properties的配置方式:

    # 數據源配置 spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver

    .yml的配置方式:

    # 數據源配置 spring:datasource:url: jdbc:mysql://localhost:3306/testusername: rootpassword: 123456driver-class-name: com.mysql.jdbc.Driver

    .yml文件采用縮進的方式,解決了.properties需要反復寫前綴的麻煩之處。

    具體用.yml還是.properties來配置全憑個人喜好,筆者在這里會使用.yml來講解~

    然后,現在先來改一下配置文件后綴:

    在application.properties上右鍵,Refactor→Rename

    在application.yml中輸入以下內容,為我們的Hello World項目設置一下服務啟動端口(如果不設置的話,默認也是8080):

    server:port: 8080

    注意:port后面的冒號后面要有空格。不然配置會失效。

    正確的寫法:

    錯誤的寫法:

    我們可以看到,如果冒號后面沒有空格,port會變黑色。


    三、構建項目結構

    按照上篇的內容(STEP3.2 服務器對于HTTP請求的處理流程)我們應該有Controller、Service、Dao的分層,為項目添加結構如下:

    注:保持良好習慣,包名小寫

    第一個SpringBoot程序只是寫helloworld,所以service和dao層暫時用不到。但是保持良好習慣,文件夾可以先建在那里。


    四、寫一個HelloWorld服務

    在controller包中新建一個類MyController.java,寫入以下代碼:

    import

    涉及到的兩個關鍵注解,釋義如下:

    (1)@RestController

    我們查看一下RestController的定義(Ctrl+鼠標左鍵點進@RestController可以看到)

    @Target

    @RestController是@ResponseBody和@Controller的集合(一個注解包含了兩個注解,同時具有兩個注解的功能)。

    @Controller

    @Controller方法可以修飾類,指定該類是一個控制器類。這意味著該類下的方法在返回時,會自動通過視圖解析器解析(如果有解析器的話),返回頁面資源。(參考我們的springboot-helloworld項目的myController2:springboot-helloworld項目)

    @Controller是前后端不分離的解決方案(頁面通過后臺來返回),不屬于我們的重點內容。

    @ResponseBody

    該注解用于將Controller的方法返回的對象,通過適當的HttpMessageConverter轉換為指定格式后,寫入到Response對象的body數據區。本質上就是把返回頁面資源的控制器轉變成返回數據(字符串、浮點數、json對象等等)的控制器。

    (2)@GetMapping

    我們查看一下@GetMapping的定義:

    @Target

    也就是說,如下這兩種寫法是等價的:

    @GetMapping@RequestMapping

    那么看到下面這個@RequestMappling的寫法也就很好理解了。

    @GetMapping也就是指定請求方式為GET方式,里面傳的參數也就是value值,代表請求的URL。

    換言之,用戶通過"/hello"這個url發送一個GET請求,可以進入@GetMapping("/hello")修飾的方法public String hello()里,執行里面的業務邏輯并返回。

    最后運行我們的服務(在入口類SpringbootHelloworldApplication上右鍵運行),控制臺會顯示如下字樣:

    會首先顯示一個Spring的大圖標,在倒數第二行會顯示服務運行在8080端口上(支持http協議訪問)

    打開瀏覽器輸入localhost:8080/hello可以看到如下界面:

    至此,最簡易的服務就算是搭建完成了~完結撒花~

    我們的helloworld項目的地址:

    springboot-helloworld

    總結

    以上是生活随笔為你收集整理的springboot静态网页放哪里_STEP4.1 第一个SpringBoot项目的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。