SpringBoot 開發入門—Springboot基礎框架匯總

一、環境準備

Java:Spring Boot 3.0.2 需要 Java 17,并且與 Java 19 兼容

Maven:Apache Maven 3.5 或更高版本兼容

二、啟動器

以下應用程序啟動器由 Spring Boot 在該組下提供:org.springframework.boot

表 1.Spring 引導應用程序啟動器

名字

描述

spring-boot-starter

核心啟動器,包括自動配置支持、日志記錄和 YAML

spring-boot-starter-amqp

使用Spring AMQP和Rabbit MQ的入門

spring-boot-starter-aop

使用Spring AOP和AspectJ進行面向方面的編程的入門器

spring-boot-starter-artemis

使用 Apache Artemis 的 JMS 消息傳遞入門

spring-boot-starter-batch

使用彈簧批處理的啟動器

spring-boot-starter-cache

使用 Spring 框架緩存支持的入門工具

spring-boot-starter-data-cassandra

使用 Cassandra 分布式數據庫和 Spring Data Cassandra 的入門

spring-boot-starter-data-cassandra-reactive

使用 Cassandra 分布式數據庫和 Spring Data Cassandra Reactive 的入門

spring-boot-starter-data-couchbase

使用Couchbase面向文檔的數據庫和Spring Data Couchbase的入門

spring-boot-starter-data-couchbase-reactive

用于使用 Couchbase 面向文檔的數據庫和 Spring Data Couchbase Reactive 的入門

spring-boot-starter-data-elasticsearch

使用Elasticsearch搜索和分析引擎以及Spring Data Elasticsearch的入門工具

spring-boot-starter-data-jdbc

使用Spring Data JDBC的入門器

spring-boot-starter-data-jpa

將 Spring Data JPA 與 Hibernate 一起使用的入門程序

spring-boot-starter-data-ldap

使用Spring Data LDAP的入門

spring-boot-starter-data-mongodb

使用MongoDB面向文檔的數據庫和Spring Data MongoDB的入門

spring-boot-starter-data-mongodb-reactive

使用MongoDB面向文檔的數據庫和Spring Data MongoDB反應式的入門

spring-boot-starter-data-neo4j

使用 Neo4j 圖形數據庫和 Spring Data Neo4j 的入門

spring-boot-starter-data-r2dbc

使用彈簧數據R2DBC的入門器

spring-boot-starter-data-redis

將 Redis 鍵值數據存儲與 Spring Data Redis 和 Lettuce 客戶端一起使用的入門

spring-boot-starter-data-redis-reactive

將 Redis 鍵值數據存儲與 Spring Data Redis 反應式和生菜客戶端一起使用的入門

spring-boot-starter-data-rest

使用Spring Data REST通過REST公開Spring Data Repository的入門程序

spring-boot-starter-freemarker

使用 FreeMarker 視圖構建 MVC Web 應用程序的入門器

spring-boot-starter-graphql

使用 Spring GraphQL 構建 GraphQL 應用程序的入門器

spring-boot-starter-groovy-templates

使用 Groovy 模板視圖構建 MVC Web 應用程序的入門工具

spring-boot-starter-hateoas

使用Spring MVC和Spring HATEOAS構建基于超媒體的RESTful Web應用程序的入門

spring-boot-starter-integration

使用彈簧集成的啟動器

spring-boot-starter-jdbc

將 JDBC 與 HikariCP 連接池一起使用的入門

spring-boot-starter-jersey

使用 JAX-RS 和 Jersey 構建 RESTful Web 應用程序的入門工具。彈簧啟動啟動網的替代方案

spring-boot-starter-jooq

使用 jOOQ 通過 JDBC 訪問 SQL 數據庫的入門工具。spring-boot-starter-data-jpaspring-boot-starter-jdbc 的替代方案

spring-boot-starter-json

用于讀取和寫入 json 的入門器

spring-boot-starter-mail

使用Java Mail和Spring Framework的電子郵件發送支持的入門

spring-boot-starter-mustache

使用 Mustache 視圖構建 Web 應用程序的入門器

spring-boot-starter-oauth2-client

使用Spring Security的OAuth2 / OpenID Connect客戶端功能的入門

spring-boot-starter-oauth2-resource-server

使用Spring Security的OAuth2資源服務器功能的入門

spring-boot-starter-quartz

使用石英調度程序的入門器

spring-boot-starter-rsocket

用于構建 RSocket 客戶端和服務器的入門器

spring-boot-starter-security

使用彈簧安全性的入門

spring-boot-starter-test

用于測試Spring Boot應用程序的入門器,包括JUnit Jupiter,Hamcrest和Mockito等庫

spring-boot-starter-thymeleaf

使用 Thymeleaf 視圖構建 MVC Web 應用程序的入門器

spring-boot-starter-validation

將 Java Bean Validation 與 Hibernate Validator 結合使用的入門程序

spring-boot-starter-web

用于構建Web的入門工具,包括使用Spring MVC構建Web(包括RESTful)的應用程序。使用 Tomcat 作為默認的嵌入式容器

spring-boot-starter-web-services

使用 Spring Web 服務的入門器

spring-boot-starter-webflux

使用 Spring Framework 的響應式 Web 支持構建 WebFlux 應用程序的入門工具

spring-boot-starter-websocket

使用Spring Framework的MVC WebSocket支持構建WebSocket應用程序的入門工具

除了應用程序啟動器之外,以下啟動器還可用于添加生產就緒功能:

表 2.Springboot啟動器

名字

描述

spring-boot-starter-actuator

使用Spring Boot執行器的入門,該執行器提供生產就緒功能,可幫助您監視和管理應用程序

最后,Spring Boot 還包括以下啟動器,如果要排除或交換特定的技術方面,可以使用它們:

表 3.Springboot技術啟動器

名字

描述

spring-boot-starter-jetty

使用 Jetty 作為嵌入式 servlet 容器的入門工具。彈簧啟動啟動器-雄貓的替代品

spring-boot-starter-log4j2

使用 Log4j2 進行日志記錄的入門程序。彈簧引導啟動日志記錄的替代方案

spring-boot-starter-logging

使用回日志進行日志記錄的啟動器。默認日志記錄啟動器

spring-boot-starter-reactor-netty

使用 Reactor Netty 作為嵌入式反應式 HTTP 服務器的入門程序。

spring-boot-starter-tomcat

使用 Tomcat 作為嵌入式 servlet 容器的入門工具。spring-boot-starter-web 使用的默認 servlet 容器啟動器

spring-boot-starter-undertow

使用 Undertow 作為嵌入式 servlet 容器的入門工具。彈簧啟動啟動器-雄貓的替代品

要了解如何交換技術方面,請參閱交換 Web 服務器日志記錄系統的操作文檔。

三、配置類

Spring Boot 傾向于基于 Java 的配置。 盡管SpringApplication 可以與 XML 源一起使用,但我們通常建議將主源設置為單個類@Configuration。 通常,用@Configuration定義一個有main方法的類。

3.1. 導入其他配置類

當你不需要把所有的東西都放在一個Class里時。 @Import注釋可用于導入其他配置類。或者,您可以使用@ComponentScan 自動加載所有 Spring 組件,包括類。


@Import({ 類名.class , 類名.class... })
public class Appcalss {}

3.2自動配置

Spring Boot的自動裝配機制會試圖根據你所添加的依賴來自動配置你的Spring應用程序。 例如,如果你添加了 HSQLDB 依賴,而且你沒有手動配置任何DataSource Bean,那么Spring Boot就會自動配置內存數據庫。

你需要將 @EnableAutoConfiguration 或 @SpringBootApplication 注解添加到你的 @Configuration 類中,從而開啟自動配置功能。

@EnableAutoConfiguration:啟用Spring Boot的自動配置機制,類似在java代碼中自動import,屬于自動導入


@SpringBootConfiguration(proxyBeanMethods = false)
@EnableAutoConfiguration
@Import({ SomeConfiguration.class, AnotherConfiguration.class })
public class MyApplication {public static void main(String[] args) {SpringApplication.run(MyApplication.class, args);}}

禁用特定的自動配置類

如果發現正在應用不需要的特定自動配置類,則可以使用 的 exclude 屬性來禁用它們,如以下示例所示:@SpringBootApplication


@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class MyApplication {}

四、Spring Bean 和 依賴注入

你可以使用任何標準的Spring技術來定義你的Bean以及依賴注入關系。 推薦使用構造函數注入,并使用 @ComponentScan 注解來掃描Bean。

如果你按照上面的建議構造你的代碼(將你的啟動類定位在頂級包中),你可以在啟動類添加 @ComponentScan 注解,也不需要定義它任何參數, 你的所有應用組件(@Component、@Service、@Repository、@Controller 和其他)都會自動注冊為Spring Bean。

也可以直接使用 @SpringBootApplication 注解(該注解已經包含了 @ComponentScan)。

下面的例子展示了一個 @Service Bean,它使用構造器注入的方式注入了 RiskAssessor Bean。

五、使用@SpringBootApplication注釋

許多 Spring Boot 開發人員喜歡他們的應用程序使用自動配置、組件掃描并能夠在他們的“應用程序類”上定義額外的配置。 單個注釋可用于啟用這三個功能,即:@SpringBootApplication

  • @EnableAutoConfiguration:啟用 Spring 啟動的自動配置機制

  • @ComponentScan:在應用程序所在的包上啟用掃描(請參閱最佳實踐)@Component)

  • @SpringBootConfiguration:在上下文中啟用額外 Bean 的注冊或導入其他配置類。 Spring 標準的替代方案,可幫助在集成測試中進行配置檢測


// Same as @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan
@SpringBootApplication
public class MyApplication {public static void main(String[] args) {SpringApplication.run(MyApplication.class, args);}}

六、開發一個 SpringBoot應用程序

在開始之前,請打開終端并運行以下命令以確保已安裝有效版本的 Java 和 Maven:


$ java -version
openjdk version "17.0.4.1" 2022-08-12 LTS
OpenJDK Runtime Environment (build 17.0.4.1+1-LTS)
OpenJDK 64-Bit Server VM (build 17.0.4.1+1-LTS, mixed mode, sharing)

 mvn -v
Apache Maven 3.8.5 (3599d3414f046de2324203b78ddcf9b5e4388aa0)
Maven home: usr/Users/developer/tools/maven/3.8.5
Java version: 17.0.4.1, vendor: BellSoft, runtime: /Users/developer/sdkman/candidates/java/17.0.4.1-librca

1、創建 POM

我們需要從創建一個 Maven 文件開始。


<?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><groupId>com.example</groupId><artifactId>myproject</artifactId><version>0.0.1-SNAPSHOT</version><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.2</version></parent><!-- Additional lines to be added here... --></project>

2、添加類路徑依賴

在此之前,我們可以通過運行以下命令來查看我們當前擁有的內容:spring-boot-starter-web

$ mvn dependency:tree[INFO] com.example:myproject:jar:0.0.1-SNAPSHOT

由于我們正在開發一個 Web 應用程序,因此我們添加一個依賴項


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

3、編寫代碼

為了完成我們的應用程序,我們需要創建一個 Java 文件。 默認情況下,Maven 從 編譯源代碼,因此您需要創建該目錄結構,然后添加一個名為以包含以下代碼的文件:src/main/javasrc/main/java/MyApplication.java

@RestController
@SpringBootApplication
public class MyApplication {@RequestMapping("/")String home() {return "Hello World!";}public static void main(String[] args) {SpringApplication.run(MyApplication.class, args);}}

@RestController:相當于@ResponseBody + @Controller,@Controller注解表示后,該類將會被spring管理,@ResponseBody注解標識后,響應數據可以是文本或者JSON數據類型

@RequestMapping:是一個用來處理請求地址映射的注解,可用于映射一個請求或一個方法,可以用在類或方法上。

七、Tracing

Spring Boot 提供依賴管理和自動配置Micrometer Tracing,這是常用信息監控庫 。

Spring Boot 為以下跟蹤器提供自動配置:

  • 使用ZipkinWavefrontOpenTelemetry

  • OpenZipkin Brave with Zipkin or Wavefront

我們需要一個可用于開始跟蹤的示例應用程序。 就我們的目的而言,“入門.html部分中介紹的簡單”Hello World!“Web 應用程序就足夠了。 我們將使用OpenTelemetry跟蹤器與Zipkin作為跟蹤后端。

回顧一下,我們的主要應用程序代碼如下所示:


@RestController
@SpringBootApplication
public class MyApplication{privatestaticfinal Log logger = LogFactory.getLog(MyApplication.class);@RequestMapping("/")String home(){logger.info("home() has been called");return"Hello World!";}public static void main(String[] args){SpringApplication.run(MyApplication.class, args);}}
該方法中添加了一個記錄器語句,稍后會很重要。home()

現在我們必須添加以下依賴項:

  • org.springframework.boot:spring-boot-starter-actuator

  • io.micrometer:micrometer-tracing-bridge-otel- 這是將千分尺觀測 API 橋接到開放遙測所必需的。

  • io.opentelemetry:opentelemetry-exporter-zipkin- 需要向 Zipkin 報告痕跡

添加以下應用程序屬性:


management.tracing.sampling.probability=1.0

默認情況下,Spring Boot 僅對 10% 的請求進行采樣,以防止跟蹤后端不堪重負。 此屬性將其切換為 100%,以便將每個請求發送到跟蹤后端。

為了收集和可視化跟蹤,我們需要一個正在運行的跟蹤后端。 我們在這里使用 Zipkin 作為我們的跟蹤后端。 Zipkin 快速入門指南提供了如何在本地啟動 Zipkin 的說明。

Zipkin 運行后,您可以啟動應用程序。

八、日志記錄

Spring Boot 沒有強制性的日志記錄依賴項,除了通常由 Spring Framework 模塊提供的 Commons Logging API。 要使用 Logback,您需要將其包含在類路徑中。 推薦的方法是通過啟動器,這完全取決于 . 對于 Web 應用程序,您只需要 ,因為它以傳遞方式依賴于日志記錄啟動器。 如果使用 Maven,則以下依賴項會為您添加日志記錄:


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

Spring Boot 有一個抽象,它試圖根據類路徑的內容配置日志記錄。 如果 Logback 可用,則它是首選。LoggingSystem

如果需要對日志記錄進行的唯一更改是設置各種記錄器的級別,則可以使用“logging.level”前綴執行此操作,如以下示例所示:application.properties


logging.level.org.springframework.web=debug
logging.level.org.hibernate=error

除了控制臺之外,您還可以使用 設置要將日志寫入的文件的位置。要配置日志記錄系統的更細粒度設置,您需要使用相關支持的本機配置格式。 默認情況下,Spring 引導從系統的默認位置(例如 Logback)選取本機配置,但您可以使用該屬性設置配置文件的位置。

1、為日志記錄配置回日志

如果需要將自定義應用于 logback,而不是可以使用 實現的自定義項,則需要添加標準 logback 配置文件。 您可以將文件添加到類路徑的根目錄中,以便進行回查

Spring 引導提供了許多登錄配置,這些配置可以在您自己的配置中。 這些包括旨在允許重新應用某些常見的 Spring 引導約定。included

以下文件在 下提供:org/springframework/boot/logging/logback/

  • defaults.xml- 提供轉換規則、模式屬性和常用記錄器配置。

  • console-appender.xml- 使用 .ConsoleAppenderCONSOLE_LOG_PATTERN

  • file-appender.xml- 使用適當的設置添加 和。RollingFileAppenderFILE_LOG_PATTERNROLLING_FILE_NAME_PATTERN

此外,還提供了舊文件以與早期版本的 Spring Boot 兼容。base.xml

典型的自定義文件如下所示:logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration><include resource="org/springframework/boot/logging/logback/defaults.xml"/><include resource="org/springframework/boot/logging/logback/console-appender.xml" /><root level="INFO"><appender-ref ref="CONSOLE" /></root><logger name="org.springframework.web" level="DEBUG"/>
</configuration>

您的登錄配置文件還可以利用負責為您創建的系統屬性:

  • ${PID}:當前進程 ID。

  • ${LOG_FILE}:是否在引導的外部配置中設置。logging.file.name

  • ${LOG_PATH}:是否在 Boot 的外部配置中設置了(表示日志文件所在的目錄)。logging.file.path

  • ${LOG_EXCEPTION_CONVERSION_WORD}:是否在引導的外部配置中設置。logging.exception-conversion-word

  • ${ROLLING_FILE_NAME_PATTERN}:是否在引導的外部配置中設置。logging.pattern.rolling-file-name

Spring Boot 還通過使用自定義 Logback 轉換器在控制臺上(但不在日志文件中)提供了一些不錯的 ANSI 顏色終端輸出

2、配置 log4j 用于日志記錄

Spring Boot 支持 Log4j 2 進行日志記錄配置,如果它位于類路徑上。 如果使用啟動器來組裝依賴項,則必須排除 Logback,然后改為包含 Log4j 2。 如果您不使用啟動器,除了 Log4j 2 之外,您還需要(至少)提供。

推薦的路徑是通過啟動器,即使它需要一些搖晃。 以下示例顯示了如何在 Maven 中設置啟動器:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></exclusion></exclusions>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>

九、配置 SSL

可以通過設置各種屬性(通常在 或 中)以聲明方式配置 SSL。 以下示例顯示如何使用 Java 密鑰庫文件設置 SSL 屬性:server.ssl.*


server.port=8443
server.ssl.key-store=classpath:keystore.jks
server.ssl.key-store-password=secret
server.ssl.key-password=another-secret

十、Lazy Initialization

SpringApplication允許應用程序被懶初始化。 當啟用懶初始化時,Bean在需要時被創建,而不是在應用程序啟動時。 因此,懶初始化可以減少應用程序的啟動時間。 在一個Web應用程序中,啟用懶初始化后將導致許多與Web相關的Bean在收到HTTP請求之后才會進行初始化。

懶初始化的一個缺點是它會延遲發現應用程序的問題。 如果一個配置錯誤的Bean被懶初始化了,那么在啟動過程中就不會再出現故障,問題只有在Bean被初始化時才會顯現出來。 還必須注意確保JVM有足夠的內存來容納應用程序的所有Bean,而不僅僅是那些在啟動期間被初始化的Bean。 由于這些原因,默認情況下不啟用懶初始化,建議在啟用懶初始化之前,對JVM的堆大小進行微調。


spring.main.lazy-initialization=true
如果你想禁用某些Bean的懶初始化,同時對應用程序的其他部分使用懶初始化,你可以使用 注解將其'Lazy' 屬性顯式地設置為 false。@Lazy(false)

十一、優雅停機

所有四個嵌入式Web服務器(Jetty、Reactor Netty、Tomcat和Undertow)以及基于響應式和Servlet的Web應用都支持優雅關閉。 它作為關閉應用程序上下文的一部分發生,并在停止 SmartLifecycle bean的最早階段執行。 這種停止處理使用一個超時,提供一個寬限期,在此期間,現有的請求將被允許完成,但不允許有新的請求。 不允許新請求的確切方式取決于正在使用的網絡服務器。 Jetty、Reactor Netty和Tomcat將在網絡層停止接受請求。 Undertow將接受請求,但立即響應服務不可用(503)的回應。


server:shutdown: "graceful"

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/73578.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/73578.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/73578.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

前端批量導入方式

webpack批量導入 webpack中使用 require.context 實現自動導入 const files require.context(./modules, false, /\.ts$/); const modules {}; files.keys().forEach((key) > {if (key ./index.ts) { return; }modules[key.replace(/(\.\/|\.ts)/g, )] files(key).def…

阿里巴巴1688類網站高保真原型設計

<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>1688類B2B平臺原型</title><script src…

C++設計模式-裝飾模式:從基本介紹,內部原理、應用場景、使用方法,常見問題和解決方案進行深度解析

一、裝飾模式基本介紹 裝飾模式&#xff08;Decorator Pattern&#xff09;是一種結構型設計模式&#xff0c;允許你在不改變對象自身的基礎上&#xff0c;動態地給一個對象添加額外的職責。這種模式創建了一個裝飾類&#xff0c;用來包裝原有的類&#xff0c;并在保持類方法簽…

2、學習Docker前置操作

docker三件套&#xff1a;鏡像、容器、倉庫 Docker hubhub.docker.com ubuntu安裝【待更新】 CentOS安裝 CentOS 僅發行版本中的內核支持 Docker。Docker 運行在 CentOS 7 (64-bit)上&#xff0c;要求系統為 64 位、Linux 系統內核版本為 3.8 以上&#xff0c;這里選用 Cen…

70. Linux驅動開發與裸機開發區別,字符設備驅動開發

一、裸機驅動開發回顧 1、底層&#xff0c;跟寄存器打交道&#xff0c;有些MCU提供了庫。 二、Linux驅動開發思維 1、Linux下驅動開發直接操作寄存器不現實。 2、根據Linux下的各種驅動框架進行開發。一定要滿足框架&#xff0c;也就是Linux下各種驅動框架的掌握。 3、驅動最…

【JavaScript 簡明入門教程】為了Screeps服務的純JS入門教程

0 前言 0-1 Screeps: World 眾所不周知&#xff0c;?Screeps: World是一款面向編程愛好者的開源大型多人在線即時戰略&#xff08;MMORTS&#xff09;沙盒游戲&#xff0c;其核心機制是通過編寫JavaScript代碼來控制游戲中的單位&#xff08;稱為“Creep”&#xff09;&#…

第12章:優化并發_《C++性能優化指南》notes

優化并發 一、并發基礎與優化核心知識點二、關鍵代碼示例與測試三、關鍵優化策略總結四、性能測試方法論多選題設計題答案與詳解多選題答案&#xff1a; 設計題答案示例 一、并發基礎與優化核心知識點 線程 vs 異步任務 核心區別&#xff1a;std::thread直接管理線程&#xf…

[C++面試] RAII資源獲取即初始化(重點)

一、入門 1、什么是 RAII&#xff1f; RAII&#xff08;Resource Acquisition Is Initialization&#xff0c;資源獲取即初始化&#xff09;是 C 的核心編程范式&#xff0c;核心思想是 ?將資源的生命周期與對象的生命周期綁定&#xff1a; ?資源獲取&#xff1a;在對象構造…

Unity粒子系統

目錄 一、界面參數介紹1.主模塊2.Emission 模塊3.Shape 模塊4.Velocity over Lifetime 模塊5.Noise 模塊6.Limit Velocity Over Lifetime 模塊7.Inherit Velocity 模塊8.Force Over Lifetime 模塊9.Color Over Lifetime 模塊10.Color By Speed 模塊11.Size over Lifetime 模塊1…

Docker-清理容器空間prune

docker system prune -a 是一個非常有用的命令&#xff0c;用于清理 Docker 系統中未使用的資源&#xff0c;包括停止的容器、未使用的網絡、卷以及未被任何容器引用的鏡像&#xff08;懸空鏡像和所有未使用的鏡像&#xff09;。以下是關于該命令的詳細說明&#xff1a; 命令格…

LabVIEW遠程控制通訊接口

abVIEW提供了多種遠程控制與通訊接口&#xff0c;適用于不同場景下的設備交互、數據傳輸和系統集成。這些接口涵蓋從基礎的網絡協議&#xff08;如TCP/IP、UDP&#xff09;到專用技術&#xff08;如DataSocket、遠程面板&#xff09;&#xff0c;以及工業標準協議&#xff08;如…

LeetCode hot 100—尋找重復數

題目 給定一個包含 n 1 個整數的數組 nums &#xff0c;其數字都在 [1, n] 范圍內&#xff08;包括 1 和 n&#xff09;&#xff0c;可知至少存在一個重復的整數。 假設 nums 只有 一個重復的整數 &#xff0c;返回 這個重復的數 。 你設計的解決方案必須 不修改 數組 nums…

linux - centos7 部署 redis6.0.5

事先說明 本篇文章只解決在部署redis中出現的問題&#xff0c;并沒有部署redis的全過程&#xff0c;詳細部署過程可以參考Linux安裝部署Redis(超級詳細) - 長沙大鵬 - 博客園 執行 make 命令時報錯 原因&#xff1a;是因為gcc版本太低 升級gcc版本時 出現沒有可用軟件包 devt…

31天Python入門——第15天:日志記錄

你好&#xff0c;我是安然無虞。 文章目錄 日志記錄python的日志記錄模塊創建日志處理程序并配置輸出格式將日志內容輸出到控制臺將日志寫入到文件 logging更簡單的一種使用方式 日志記錄 日志記錄是一種重要的應用程序開發和維護技術, 它用于記錄應用程序運行時的關鍵信息和…

AI Agent開發大全第八課-Stable Diffusion 3的本地安裝全步驟

前言 就像我們前面幾課所述,本系列是一門體系化的教學,它不像網上很多個別存在的單篇博客走“吃快餐”模式,而是從扎實的基礎來帶領大家一步步邁向AI開發高手。所以我們的AI課程設置是相當全面的,除了有牢固的基礎知識外還有外面互聯網上也搜不到的生產級實戰。 前面講過…

用selenium+ChromeDriver豆瓣電影 肖申克的救贖 短評爬取(pycharm 爬蟲)

一、豆瓣電影 肖申克的救贖 短評urlhttps://movie.douban.com/subject/1292052/comments 二、基本知識點講解 1. Selenium 的基本使用 Selenium 是一個用于自動化瀏覽器操作的庫&#xff0c;常用于網頁測試和爬蟲。代碼中使用了以下 Selenium 的核心功能&#xff1a; webdriv…

開源在線客服系統源碼-前端源碼加載邏輯

客服源碼是使用Golang(又稱Go)開發的&#xff0c;Go是Google公司開發的一種靜態強類型、編譯型、并發型&#xff0c;并具有垃圾回收功能的編程語言。Go 天生支持并發。好處太多就不多說了。 全源碼客服系統用戶&#xff0c;想要針對自己的業務&#xff0c;進行二次開發&#xf…

Oracle數據庫服務器地址變更與監聽配置修改完整指南

一、前言 在企業IT運維中&#xff0c;Oracle數據庫服務器地址變更是常見的運維操作。本文將詳細介紹如何安全、高效地完成Oracle數據庫服務器地址變更及相關的監聽配置修改工作&#xff0c;確保數據庫服務在遷移后能夠正常運行。 二、準備工作 1. 環境檢查 確認新舊服務器I…

g對象在flask中主要是用來實現什么

在Flask中&#xff0c;g對象&#xff08;全稱flask.g&#xff09;是一個線程局部&#xff08;thread-local&#xff09;的臨時存儲對象&#xff0c;主要用于在單個請求的上下文&#xff08;request context&#xff09;中共享數據。它的核心作用是為同一請求的不同處理階段&…

工具介紹《WireShark》

Wireshark 過濾命令中符號含義詳解 一、比較運算符 Wireshark 支持兩種比較運算符語法&#xff1a;英文縮寫&#xff08;如 eq&#xff09;和 C語言風格符號&#xff08;如 &#xff09;&#xff0c;兩者功能等價。 符號&#xff08;英文縮寫&#xff09;C語言風格符號含義示…