Overslaan naar hoofdinhoud

Spring DevTools

Openen in ChatGPT

Spring DevTools biedt automatische herstarts van de app wanneer codewijzigingen plaatsvinden. webforJ DevTools voegt automatische browserverversing toe - wanneer Spring je app herstart, ververst de browser automatisch via de LiveReload-server van webforJ.

Verschillende bestandstypen veroorzaken verschillende herlaadgewoonten. Wijzigingen in Java-code veroorzaken een volledige Spring-herstart en browserverversing. Wijzigingen in CSS en afbeeldingen worden bijgewerkt zonder een pagina-herlaad, waardoor formuliergegevens en de status van de app behouden blijven.

Begrijpen van webforJ DevTools

webforJ breidt Spring DevTools uit met browsersynchronisatie. Wanneer Spring bestandwijzigingen detecteert en opnieuw start, vernieuwt webforJ DevTools automatisch je browser.

Herlaadgewoonten

Verschillende bestandstypen veroorzaken verschillende herlaadstrategieën:

  • Java-bestanden: Volledige browserpagina-herlaad na Spring-herstart
  • JavaScript-bestanden: Volledige browserpagina-herlaad na Spring-herstart
  • CSS-bestanden: Stijlupdates zonder pagina-herlaad
  • Afbeeldingen: Ververs in plaats zonder pagina-herlaad

Afhankelijkheden

Voeg zowel Spring DevTools als webforJ DevTools toe aan je project:

pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>

<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-spring-devtools</artifactId>
<version>${webforj.version}</version>
<optional>true</optional>
</dependency>

Configuratie

Schakel webforJ DevTools in je application.properties-bestand in:

application.properties
# Schakel webforJ browser auto-verversing in
webforj.devtools.livereload.enabled=true

# Schakel onmiddellijke afsluiting in voor snellere herstarts
server.shutdown=immediate

Geavanceerde configuratie

Configureer WebSocket-verbinding en herlaadgewoonten:

application.properties
# WebSocket serverpoort (standaard: 35730)
webforj.devtools.livereload.websocket-port=35730

# WebSocket eindpunt pad (standaard: /webforj-devtools-ws)
webforj.devtools.livereload.websocket-path=/webforj-devtools-ws

# Heartbeat-interval in milliseconden (standaard: 30000)
webforj.devtools.livereload.heartbeat-interval=30000

# Schakel hot reload in voor statische middelen (standaard: true)
webforj.devtools.livereload.static-resources-enabled=true

25.03 Configureer het openen van de browser bij het opstarten van de app:

application.properties
# Schakel het openen van de browser in (standaard: false)
webforj.devtools.browser.open=true

# localhost, hostnaam of IP-adres (standaard: localhost)
webforj.devtools.browser.host=localhost