欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java?Spring?Boot的介紹與初體驗(yàn)

 更新時(shí)間:2022年01月21日 09:45:09   作者:ITKaven  
大家好,本篇文章主要講的是java?Spring?Boot的介紹與初體驗(yàn),感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下

Spring Boot 介紹

Spring Boot用于創(chuàng)建可運(yùn)行的、獨(dú)立的、生產(chǎn)級(jí)的基于Spring的應(yīng)用程序。Spring Boot對(duì)Spring和第三方庫(kù)持約定大于配置的觀念,以便可以輕松上手。大多數(shù)Spring Boot應(yīng)用程序只需要很少的配置。

Spring Boot可以通過使用java -jar或更傳統(tǒng)的war包部署來啟動(dòng)Java應(yīng)用程序,Spring Boot的目標(biāo)是:

為所有Spring開發(fā)提供從根本上更快且可廣泛訪問的體驗(yàn)。開箱即用。提供一系列大型項(xiàng)目通用的非功能特性(例如嵌入式服務(wù)器、安全性、指標(biāo)、健康檢查和外部化配置)。沒有代碼生成,也不需要XML配置。

系統(tǒng)要求

Spring Boot 2.6.2需要Java 8,并且兼容Java 17(包括Java 17 ),還需要Spring Framework 5.3.14或更高版本,博主的Spring Boot系列博客都將基于Spring Boot 2.6.2,它是目前最新的正式版。

在這里插入圖片描述

構(gòu)建工具

Spring Boot為以下構(gòu)建工具提供了顯式構(gòu)建支持:

Maven 3.5+Gradle 6.8.x 6.9.x 7.x

Servlet 容器

Spring Boot支持如下圖所示的嵌入式Servlet容器:

在這里插入圖片描述

可以將Spring Boot應(yīng)用程序部署到任何兼容Servlet 3.1+的容器。

初體驗(yàn)

使用IDEA創(chuàng)建Spring Boot應(yīng)用程序,如下圖所示進(jìn)行操作。

在這里插入圖片描述

使用Spring Initializer構(gòu)建Spring Boot項(xiàng)目比較方便,可以讓我們選擇需要的依賴、Spring Boot版本、語言和打包方式,并且還會(huì)自動(dòng)生成項(xiàng)目常用文件(如配置文件、靜態(tài)文件的包、啟動(dòng)類等)。當(dāng)然也可以使用Maven構(gòu)建Spring Boot項(xiàng)目,博主平時(shí)喜歡使用Maven構(gòu)建項(xiàng)目(自己寫啟動(dòng)類、配置文件和pom.xml即可,可以讓我們更加熟悉構(gòu)建Spring Boot項(xiàng)目的流程),Spring Initializer應(yīng)該也是通過Maven來構(gòu)建項(xiàng)目,只不過在構(gòu)建項(xiàng)目時(shí)提供了一些便利。

在這里插入圖片描述

選擇依賴和Spring Boot版本,博主帶大家體驗(yàn)一下用Spring Boot編寫一個(gè)接口的方便,因此需要web依賴(webflux以后也會(huì)介紹)。

在這里插入圖片描述

構(gòu)建的Spring Boot項(xiàng)目的結(jié)構(gòu)如下圖所示:

在這里插入圖片描述

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 https://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.6.2</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    
    <groupId>com.kaven</groupId>
    <artifactId>springboot</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    
    <name>springboot</name>
    <description>springboot</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>

啟動(dòng)類:

package com.kaven.springboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringbootApplication {

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

@SpringBootApplication注解是啟動(dòng)類的關(guān)鍵,它會(huì)開啟自動(dòng)配置和組件掃描,大家現(xiàn)在可以不用管這些,以后博主都會(huì)詳細(xì)介紹。SpringApplication.run()則會(huì)創(chuàng)建和管理應(yīng)用上下文以及打印Banner等。

啟動(dòng)應(yīng)用,如下圖所示進(jìn)行操作:

在這里插入圖片描述

啟動(dòng)成功,如下圖所示:

在這里插入圖片描述

寫一個(gè)Hellow World接口,根據(jù)習(xí)慣,將接口放在controller包下。

在這里插入圖片描述

package com.kaven.springboot.controller;

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

@RestController
public class HelloWorldController {
    @GetMapping("/helloworld")
    public String helloWorld() {
        return "Hello World";
    }
}

@RestController是一個(gè)便利的注解,它組合了@Controller(帶有此注解的類型被視為控制器)和@ResponseBody(指示方法的返回值應(yīng)綁定到Web響應(yīng)的Body中)注解。@GetMapping("/helloworld")注解定義了接口處理的請(qǐng)求類型(GET)和請(qǐng)求路徑(/helloworld),用于處理請(qǐng)求。

重新啟動(dòng)應(yīng)用,再訪問接口,Spring Boot應(yīng)用默認(rèn)啟動(dòng)在8080端口上。

在這里插入圖片描述

訪問接口時(shí),應(yīng)用的控制臺(tái)也有日志輸出,DispatcherServlet是一種Servlet實(shí)現(xiàn),可以用于將請(qǐng)求派發(fā)給指定的控制器中定義的接口,但它的作用不僅如此,以后博主也會(huì)詳細(xì)介紹。

在這里插入圖片描述

總結(jié)

到此這篇關(guān)于java Spring Boot的介紹與初體驗(yàn)的文章就介紹到這了,更多相關(guān)java Spring Boot內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringMVC攔截器運(yùn)行原理及配置詳解

    SpringMVC攔截器運(yùn)行原理及配置詳解

    這篇文章主要介紹了SpringMVC攔截器運(yùn)行原理及配置詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • VSCode?配置?Spring?Boot?項(xiàng)目開發(fā)環(huán)境的全過程

    VSCode?配置?Spring?Boot?項(xiàng)目開發(fā)環(huán)境的全過程

    兩三年前曾經(jīng)試過配置Java環(huán)境, 存在不少問題作罷. 最近搜了下相關(guān)的文章, 感覺VSCode對(duì)Java項(xiàng)目的支持比三年前完善了不少. 今天實(shí)際配置了一下環(huán)境, 把自己常用的功能過了一遍, 基本能跑通開發(fā)流程, 做個(gè)筆記,需要的朋友可以參考下
    2024-03-03
  • java實(shí)戰(zhàn)小技巧之優(yōu)雅的實(shí)現(xiàn)字符串拼接

    java實(shí)戰(zhàn)小技巧之優(yōu)雅的實(shí)現(xiàn)字符串拼接

    字符串拼接是我們?cè)贘ava代碼中比較經(jīng)常要做的事情,就是把多個(gè)字符串拼接到一起,這篇文章主要給大家介紹了關(guān)于java實(shí)戰(zhàn)小技巧之優(yōu)雅的實(shí)現(xiàn)字符串拼接的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • Java使用DSA密鑰對(duì)生成XML簽名的方法

    Java使用DSA密鑰對(duì)生成XML簽名的方法

    這篇文章主要介紹了Java使用DSA密鑰對(duì)生成XML簽名的方法,實(shí)例分析了java使用DSA密鑰對(duì)生成XML簽名的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • Java AtomicInteger類的重要方法和特性

    Java AtomicInteger類的重要方法和特性

    AtomicInteger是Java中的一個(gè)類,用于實(shí)現(xiàn)原子操作的整數(shù),AtomicInteger類主要用于處理整數(shù)類型的原子操作,本文給大家介紹Java AtomicInteger類的重要方法和特性,感興趣的朋友一起看看吧
    2023-10-10
  • Springboot之@Async不執(zhí)行原因及分析

    Springboot之@Async不執(zhí)行原因及分析

    這篇文章主要介紹了Springboot之@Async不執(zhí)行原因及分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Spring?MVC文件請(qǐng)求處理MultipartResolver詳解

    Spring?MVC文件請(qǐng)求處理MultipartResolver詳解

    這篇文章主要介紹了Spring?MVC文件請(qǐng)求處理詳解:MultipartResolver,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-11-11
  • 詳解Java中的Reflection反射和暴力反射

    詳解Java中的Reflection反射和暴力反射

    本文主要介紹了詳解Java中的Reflection反射和暴力反射,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 詳解SpringBoot定制@ResponseBody注解返回的Json格式

    詳解SpringBoot定制@ResponseBody注解返回的Json格式

    這篇文章主要介紹了詳解SpringBoot定制@ResponseBody注解返回的Json格式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • JdbcTemplate方法介紹與增刪改查操作實(shí)現(xiàn)

    JdbcTemplate方法介紹與增刪改查操作實(shí)現(xiàn)

    這篇文章主要給大家介紹了關(guān)于JdbcTemplate方法與增刪改查操作實(shí)現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用JdbcTemplate具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11

最新評(píng)論