it-swarm.com.de

Wo kann man die Geschäftslogik im Frühjahr-MVC-Framework einsetzen?

Ich weiß nicht, wo ich die Geschäftslogik im Frühjahr MVC einsetzen sollte, weil ich neu dabei bin. Ich habe eine Ahnung, was zu tun ist, aber wegen des Mangels an Kenntnissen im Frühling kann ich nicht sagen, wo ich anfangen soll. Ich möchte auch fragen, ob jemand weiß, wo ich ein gutes Tutorial zu diesem Thema oder ein komplettes Beispiel einer Spring-mvc-Webanwendung mit einer Geschäftslogik erhalten kann. Wie auch immer, die Geschäftslogik, über die ich gesprochen habe, dreht sich alles um das Datenbankhandling :)

19

@Controller-Klassen dienen als C von MVC . Beachten Sie, dass der reale Controller in Spring MVC DispatchServlet ist, der die spezifische @Controller-Klasse verwendet, um die URL-Anforderung zu verarbeiten.

@Service-Klassen sollten für Ihre Serviceebene dienen. Hier sollten Sie Ihre Geschäftslogik einfügen .

@Repository-Klassen sollten für Ihre Datenzugriffsschicht dienen. Hier sollten Sie CRUD-Logik einsetzen: Einfügen, Aktualisieren, Löschen, Auswählen.

@Service, @Repository und Ihre Entitätsklassen sind M von MVC . JSP und andere Ansichtstechnologien (z. B. JSP, Thymeleaf usw.) entsprechen V von MVC .

@Controller-Klassen sollten nur über Schnittstellen auf @Service-Klassen zugreifen können. Ähnlich sollten @Service-Klassen nur über Schnittstellen auf andere @Service-Klassen und für einen bestimmten Satz von @Repository-Klassen zugreifen können.

53
Luiggi Mendoza

Viele Leute würden empfehlen, die Geschäftslogik zur Serviceschicht hinzuzufügen. Ich persönlich finde heraus, dass dies keine gute Idee ist, besonders wenn Sie mit dem Testen beginnen: Sie müssen sich entweder mit der Beharrlichkeit und der Geschäftslogik gleichzeitig auseinandersetzen oder sich über alles lustig machen, und dann können die Dinge sehr unordentlich werden.

Ich empfehle Ihnen, diesen Artikel zu lesen, bevor Sie Schlussfolgerungen ziehen: Der größte Fehler der Spring-Webanwendungen

Die Idee wäre, die Geschäftslogik auf die Modellebene zu verschieben und die Servicemethoden zu vereinfachen.

11
Gigi

Im Allgemeinen geht Ihre Geschäftslogik in die Serviceebene. Mit JSR-Anmerkungen können Sie jedoch grundlegende Validierungsregeln in Ihre Pojos einfügen.

Für eine Spring MVC-App verfügen Sie über Controller, die HTTP-Anforderungen verarbeiten, und eine Domänenschicht, also Pojos, die Ihr Geschäftsmodell darstellen. Sie haben oft eine Persistenzschicht (DAO). Möglicherweise verfügen Sie auch über eine Service-Schicht, um nicht-triviale Logik zu unterstützen. 

Ihr Kommentar zum Umgang mit Datenbanken ist nicht sinnvoll. Geschäftsregeln sind orthogonal zum Speichern von Daten. Ihre Datenbankbehandlung sollte in Ihre Persistenzschicht gehen. 

0
Neil McGuigan