Ako zmeniť predvolený port v jarnom zavedení systému

1. Úvod

Spring Boot poskytuje rozumné predvolené hodnoty pre mnoho vlastností konfigurácie. Napriek tomu ich niekedy musíme prispôsobiť pomocou našich hodnôt konkrétnych prípadov.

Bežný prípad použitia je zmena predvoleného portu pre zabudovaný server.

V tomto rýchlom výučbe sa dozvieme niekoľko spôsobov, ako to dosiahnuť.

2. Používanie súborov vlastností

Najrýchlejší a najjednoduchší spôsob prispôsobenia Spring Boot je prepísaním hodnôt predvolených vlastností.

Pre port servera je to vlastnosť, ktorú chceme zmeniť Port servera.

V predvolenom nastavení sa zabudovaný server spúšťa na porte 8080. Pozrime sa, ako môžeme poskytnúť inú hodnotu v application.properties spis:

server.port = 8081

Teraz sa server spustí na porte 8081.

Podobne môžeme urobiť to isté, ak používame aplikácia.yml spis:

server: port: 8081

Oba súbory sa načítajú automaticky programom Spring Boot, ak sú umiestnené v priečinku src / main / resources adresár aplikácie Maven.

2.1. Porty špecifické pre životné prostredie

Ak máme aplikáciu, ktorá je nasadená v rôznych prostrediach, môžeme chcieť, aby bežala na rôznych portoch v každom systéme.

Ľahko to dosiahneme kombináciou prístupu k súborom vlastností s profilmi jari. Konkrétne môžeme vytvoriť súbor vlastností pre každé prostredie.

Napríklad budeme mať application-dev.properties súbor s obsahom:

server.port = 8081

Potom pridáme ďalší application-qa.properties súbor s iným portom:

server.port = 8082

Konfigurácia súborov vlastností by mala byť vo väčšine prípadov dostatočná.

Existujú však aj ďalšie možnosti tohto cieľa, takže ich preskúmajme tiež.

3. Programová konfigurácia

Port môžeme nakonfigurovať programovo buď nastavením konkrétnej vlastnosti pri spustení aplikácie, alebo prispôsobením konfigurácie zabudovaného servera.

Najprv sa pozrime, ako nastavíme vlastnosť v hlavnej časti @SpringBootApplication trieda:

@SpringBootApplication verejná trieda CustomApplication {public static void main (String [] args) {SpringApplication app = new SpringApplication (CustomApplication.class); app.setDefaultProperties (kolekcie .singletonMap ("server.port", "8083")); app.run (args); }}

Ďalej, aby sme mohli prispôsobiť konfiguráciu servera, musíme implementovať WebServerFactoryCustomizer rozhranie:

@ Verejná trieda komponentu ServerPortCustomizer implementuje WebServerFactoryCustomizer {@Override public void customize (ConfigurableWebServerFactory factory) {factory.setPort (8086); }}

Toto platí pre verziu Spring Boot 2.x.

Pre Spring Boot 1.x môžeme podobne implementovať EmbeddedServletContainerCustomizer rozhranie.

4. Používanie argumentov príkazového riadku

Pri balení a spúšťaní našej aplikácie ako pohára môžeme nastaviť Port servera argument s java príkaz:

java -jar jar-5.jar --server.port = 8083

Alebo pomocou ekvivalentnej syntaxe:

java -jar -Dserver.port = 8083 jar-5.jar

5. Poradie hodnotenia

Na záver sa pozrime na to, v akom poradí tieto prístupy vyhodnotí Spring Boot.

Priorita konfigurácií je v zásade:

  • konfigurácia zabudovaného servera
  • argumenty príkazového riadku
  • súbory majetku
  • hlavný @SpringBootApplication konfigurácia

6. Záver

V tomto rýchlom výučbe sme videli, ako nakonfigurovať port servera v aplikácii Spring Boot.

Zdrojový kód príkladov je k dispozícii na serveri GitHub.


$config[zx-auto] not found$config[zx-overlay] not found