Spring Boot 2.0.0RC1

Spring Boot erreicht mit dem Release des RC1 einen weiteren wichtigen Meilenstein.

Spring Boot 2.0.0.RC1

Portierung auf 2.0

Wenn eine Anwendung von einem älteren Releasestand auf 2.0.0 portiert werden soll, so haben sich wahrscheinlich einige der Properties geändert. D.h. sie sind zum Beispiel entfallen oder wurden durch andere ersetzt. Ja alle Änderungen sind in den Milestones dokumentiert oder man kann den Migrationcheck verwenden, aber trotzdem wird es vorkommen nicht alles berücksichtig wird.

Abhilfe schafft das neue Modul deprecated properties support.

org.springframework.boot:spring-boot-deprecated-properties-support

Wird dieses als Abhängikeit in den Classpath mit aufgenommen, so kann es teileweise Ersetzungen vornehmen und veraltete Properties in dem Log ausgeben.

Änderungen PatternMatching bei RequestMappings

Eine Anfrage “GET /projects/spring-boot.json” wird nicht mehr automatisch auf @GetMapping(“/projects/spring-boot”) gemappt, da es in der Vergangenheit oft Probleme mit der Zuordnung gegeben hat und es dadurch ggf. Sicherheitslücken auftreten können. Aus diesem Grunde wurde im RC1 das Feature abgeschaltet und darauf verwiesen den Best Practiceses zu folgen.

Beispiel

/pets.json

@GetMapping(path = "/pets/{petId}", produces = "application/json;charset=UTF-8")
@ResponseBody
public Pet getPet(@PathVariable String petId) {
// ...
}

@PostMapping(path = "/pets", consumes = "application/json")
public void addPet(@RequestBody Pet pet) {
// ...
}

Actuator

Actuator mappings

Der Endpoint /actuator/mappings wurde komplett überarbeitet und das JSON angepasst, sodass die Context Hierachie abgebildet werden kann.

Endpunkt /actuator/trace wurde umbenannt

Der Endpunkt /actuator/trace wurde in /actuactor/httptrace umbenannt. Es wurden auch einige Änderungen vorgnommen, um den HTTP Request Austausch besser abzubilden (siehe).

Konfiguration

Die Konfigurationsschlüssel wurden weiter harmoniesiert.

  • spring.banner
  • spring.metrics –> management.metrics