3

Ich verwende Spring Data REST, um die Beziehungen meiner Entität und ihrer Beziehungen anzuzeigen. Ich habe eine OneToOne-Beziehung zwischen zwei Entitäten und ich versuche, die Beziehung mit PUT und PATCH zu aktualisieren/ändern.Spring Data Rest PUT vs. PATCH LinkableResources

Ich bemerkte, dass Spring Data REST werden Sie nur erlauben verlinkte Ressourcen zu aktualisieren - JPA abgebildet Unternehmens (OneToMany, ManyToOne usw.), die auch AggregateRoots sind (hat ein Repository) - über einen PATCH und werden ignoriert mit a PUT.

Dies kann in der LinkedAssociationSkippingAssociationHandler Klasse zu sehen:

if (associationLinks.isLinkableAssociation(association)) { 
    return; 
} 

Warum ist das? Was ist der Grund dafür?

Ist es, weil das Design möchte, dass wir die Assoziationen als Ressourcen selbst behandeln, wie in this part of the documentation gesehen? Ich kann die Beziehung über eine PUT mit Content-Type Text/URI-Liste ändern, aber es fühlt sich unnatürlich an und erfordert eine zusätzliche HTTP-Anfrage.

Antwort

Verwandte Themen