Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Auszug

...

hidden

...

Verwendung

true

Nuclos REST Richtlinien:

...

GET, POST, PUT, DELETE

...

GET: Holen von Daten, keine Veränderung in der DB

POST: Erzeugen eines Objects in der DB

, idempotent, Pfad, PathParam, RVO, Service-Implementierung.

globe with meridians Sprache: Deutsch · English

open book Richtlinien für REST-Service-Implementierungen

Konventionen für eigene REST-Services – HTTP-Verben, Pfaddesign und ein Code-Beispiel.

Status
colourGrey
titleReferenz
Status
colourBlue
titleEntwickler
Status
colourGreen
titleStand: Jul 2026
Status
colourGrey
titlegilt fuer Nuclos 4.2026.x

Panel
bgColor#F4F5F7

Auf dieser Seite

Inhalt
maxLevel2
minLevel2

Richtlinien für die Implementierung eigener REST-Services in Nuclos.

1. HTTP-Verben strikt nach REST-Standard

VerbBedeutung
GETDaten holen – keine Änderung in der DB.
POSTein Objekt in der DB erzeugen.
PUTein Objekt ändern (idempotent;

...

ein zweites PUT erzeugt keinen neuen Datensatz).
DELETE

...

ein oder mehrere Objekte löschen.

2

...

. Selbstsprechende

...

, objektorientierte

...

einen Baum erzeugen:

Pfade

Codeblock
languagehttp
POST  

...

 /tree

...

einen Baum verändern:

...

PUT    /tree/{treeid}

...

einen Ast am Baum entfernen:

...


DELETE /tree/{treeid}/branch/{branchid}

3

...

Suboptimal:

. Unnötige Pfadteile vermeiden

...

Insbesondere am Anfang keine überflüssigen Segmente (z.​B. nicht

/neudazu/botanik/heinzmueller/pflanzen/tree/

...

).

4. Beispiel: User-Verwaltung

Codeblock
languagejava
POST /tree

Verwandte Seiten

gear RESTful Service


REST-Service.

Öffnen →

) Beispiel Code für einen Restservice zur Userverwaltung: Codeblock@Path("/user") public class UserService {    @GET  public List<UserRVO> getUserList(@PathParam("username") String username) { ...  }    @POST  public UserRVO createUser(UserRVO userRVO) { ...  }    @GET  @Path("/{username}")  public UserRVO getUser(@PathParam("username") String username) { ...  }    @PUT  @Path("/{username}")  public UserRVO updateUser(@PathParam("username") String username, UserRVO userRVO) { ...  }    @DELETE  @Path("/{username}")  public UserRVO deleteUser(@PathParam("username") String username) { ...  }    @PUT  @Path("/{username}/password")  public Response setPassword(@PathParam("username") String username, PasswordChangeRVO passwordChange) { ...  }   }