怎么在SpringBoot中創(chuàng)建一個Web應用程序

怎么在Spring Boot中創(chuàng)建一個Web應用程序?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

成都創(chuàng)新互聯(lián)歡迎聯(lián)系:18982081108,為您提供成都網(wǎng)站建設網(wǎng)頁設計及定制高端網(wǎng)站建設服務,成都創(chuàng)新互聯(lián)網(wǎng)頁制作領域十載,包括成都水泥攪拌車等多個領域擁有豐富的網(wǎng)站制作經(jīng)驗,選擇成都創(chuàng)新互聯(lián),為企業(yè)保駕護航!

1. 介紹

啟動一個新項目的主要挑戰(zhàn)之一是該項目的初始設置。 我們需要對不同的目錄結構進行調(diào)用,并且需要確保我們遵循所有行業(yè)標準。對于使用Spring Boot創(chuàng)建Web應用程序,我們需要以下工具:

  1. 我們自己喜歡的IDE (我將使用IntelliJ)

  2. Maven

  3. JDK 1.8+

2. 創(chuàng)建項目結構

有多種方式可以使用Spring Boot Initializr為你生成項目結構:

  1. 使用Spring Initializr Web界面。

  2. 使用Spring Boot CLI工具。

  3. 使用你的IDE

為了簡化這篇文章,我們使用Spring Initializer的網(wǎng)頁界面來生成項目結構。

用你的瀏覽器訪問Spring Initializr Web界面,你將看到一個向導來開始你的配置。

怎么在Spring Boot中創(chuàng)建一個Web應用程序

你需要填寫網(wǎng)頁界面中的一些信息才能開始。

  1. 你想要生成什么類型的項目(Maven或Gradle)

  2. 你選擇什么語言(除了Java,你還可以選擇Kotlin或Groovy)?

  3. Spring Boot版本

  4. 標準的項目組和工件細節(jié)。

  5. 依賴

依賴是Web界面中的一個有趣功能,根據(jù)你選擇的依賴,Web界面會自動在生成的pom.xml文件中添加Spring Boot Starter依賴。如果你希望對生成的項目結構進行更多控制,或者不確定所有你想要添加到項目中的依賴,請單擊“Switch to the full version”按鈕。

在本文中,我們將使用Web和Thymeleaf(用于用戶界面)兩個Starter。

3. 項目結構

Spring Boot不需要任何特定的代碼布局或結構。我們始終可以遵循Spring Boot團隊提出的一些最佳實踐,但最終結構將由你的項目需求驅動。

下圖是我們例子應用的項目結構:

怎么在Spring Boot中創(chuàng)建一個Web應用程序

4. pom.xml

我們來看看pom.xml文件,詳細地了解Spring Boot配置。 我將僅涵蓋pom.xml中與Spring Boot相關的更改。 以下是我們示例項目中的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>
  <groupId>com.javadevjournal</groupId>
  <artifactId>javadevspringboot</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <name>javadevspringboot</name>
  <description>Java Dev Journal project for Spring Boot</description>
  <parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>1.5.4.RELEASE</version>
   <relativePath/> <!-- lookup parent from repository -->
  </parent>
  <properties>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
   <java.version>1.8</java.version>
  </properties>
  <dependencies>
   <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-thymeleaf</artifactId>
   </dependency>
   <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-tomcat</artifactId>
     <scope>provided</scope>
   </dependency>
   <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-test</artifactId>
     <scope>test</scope>
   </dependency>
  </dependencies>
</project>

Spring Boot的主要特性之一是“Starter”,它們是在我們的類路徑中添加所需依賴項(jar包)的簡單方法。 當使用Spring Boot時,我們不必在我們的類路徑中添加jar包或依賴項(如果starter不可用,你可能必須將這些依賴項添加到pom.xml中,或者可以創(chuàng)建自己的自定義starter)。 我們只需要在我們的pom.xml文件中添加正確的“Starter”,Spring Boot將確保自動添加這些依賴。

5. 主應用

如下所示是我們的Spring Boot應用程序主類,它也是一個Spring配置類。 注解@SpringBootApplication啟用Spring上下文以及Spring Boot的所有啟動魔法。 

@SpringBootApplication
public class WebApplication extends WebMvcConfigurerAdapter {
  public static void main(String[] args) {
   SpringApplication.run(WebApplication.class, args);
  }
}

5. 1 @SpringBootApplication 注解

@SpringBootApplication相當于使用@Configuration,@EnableAutoConfiguration和@ComponentScan以及它們的默認值。如果要開始項目,建議使用這個注解。

在主類中使用@SpringBootApplication相當于同時使用以下3個注解:

  1. @Configuration作為bean定義的來源。

  2. @EnableAutoConfiguration,它為Spring Boot提供了如何配置應用程序。

  3. @ComponentScan自動獲取所有Spring組件,包括@Configuration類。

5. 2 主方法

我們主類的另一個有趣特點是主方法。 這是遵循標準Java工作流程的標準方法。 我們的主類將把控制權交給Spring Boot SpringApplication類。

SpringApplication類的run方法將用于引導一個應用程序。

6. Welcome Controller

我們設置的最后一部分,我們將創(chuàng)建一個welcome controller,負責通過返回View的名稱(在本例中為“welcome”)處理/greeting的GET請求。 視圖負責呈現(xiàn)HTML內(nèi)容。 

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class WelcomeController {
  @RequestMapping("/welcome")
  public String welcome() {
    return "welcome";
  }
}

這是一個非常簡單的控制器,但在我們的設置中涵蓋了很多要點。

  1. @Controller注解表示被注解的類是“控制器”(例如Web controller)。

  2. @RequestMapping注解可確保將對/welcome的HTTP請求映射到welcome()方法。

  3. 我們沒有為@RequestMapping注解指定任何HTTP方法,因此默認情況下,映射所有HTTP方法。

  4. 由于我們使用Thymeleaf進行視圖技術并從welcome()方法返回“welcome”,因此Thymeleaf會解析模板welcome.html并生成輸出。

6. 1 UI Template

如下我們簡單的Thymeleaf HTML模板。

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
  <title>Getting Started: Serving Web Content</title>
</head>
<body>
Hello and Welcome to our Web Application
</body>
</html>

當使用Thymeleaf作為我們的模板引擎時,Spring Boot將通過在視圖名稱前后加上前綴和后綴(配置參數(shù)分別是:spring.thymeleaf.prefix和spring.thymeleaf.suffix,它們的默認的值是:'classpath:/templates/‘和'html')。

7. 運行程序

我們完成了我們簡單的Web應用程序,現(xiàn)在是時候運行我們的應用程序了。 盡管可以將此服務作為傳統(tǒng)WAR文件打包以部署到外部應用程序服務器上,但更簡單的方法是創(chuàng)建獨立應用程序。 要從IDE運行我們的應用程序,我們需要將我們的Web應用程序作為獨立的Java應用程序運行。

  1. 如果使用Maven,我們可以使用mvn spring-boot:run命令運行應用程序。

  2. 我們可以使用mvn clean package命令構建Jar包,并使用java -jar target/demo-app-0.1.0.jar運行這個jar包。

現(xiàn)在,該網(wǎng)站已啟動并正在運行,請訪問 http://localhost:8080/welcome ,如果一切正常,則應在Web瀏覽器中輸出以下內(nèi)容。

Hello and Welcome to our Web Application

關于怎么在Spring Boot中創(chuàng)建一個Web應用程序問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關知識。

網(wǎng)頁題目:怎么在SpringBoot中創(chuàng)建一個Web應用程序
URL標題:http://bm7419.com/article4/ipdsie.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、企業(yè)建站網(wǎng)站導航、Google、ChatGPT定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設