Ein einfacher REST-Service, der die drei Methoden GET, PUT und POST versteht. Es können verschiedene Begrüßungen hinterlegt werden, die über eine GET-Anfrage ausgelesen werden. Alle Begrüßungen werden im Arbeitsspeicher gehalten, so dass keine Datenbank u. ä. nötig ist.
Eine Begrüßung kann mit curl über eine PUT-Anfrage gesetzt werden:
curl -X PUT -d greeting=Ola http://localhost:8080/simple-rest-service/service/ulrich
Diese kann über GET abgefragt werden:
curl -X GET http://localhost:8080/simple-rest-service/service/ulrich
Und mit DELETE gelöscht werden:
curl -X DELETE http://localhost:8080/simple-rest-service/service/ulrich
Es ist nicht möglich mit der @RequestParam
Annotation bei PUT-Anfragen zu arbeiten. Daher wurde hier mit der
@RequestBody
Annotation auf die Parameter-Map der Anfrage zu gegreifen.
Der Name der Begrüßung sollte in der URL kodiert werden und auch "/" enthalten können. Daher konnte nicht die @PathVariable
Annotation verwendet werden. Eine Alternative stellt die implementierung eines WebArgumentResolver
da (ab Spring 3.1
HandlerMethodArgumentResolver
).