VideoShop

From Salespoint 5
(Difference between revisions)
Jump to: navigation, search
Line 15: Line 15:
  
 
Alle persistierbaren Klassen in Salespoint5 erfüllen diese Eigenschaft und können somit direkt verwendet werden.
 
Alle persistierbaren Klassen in Salespoint5 erfüllen diese Eigenschaft und können somit direkt verwendet werden.
 +
 +
=== Disc.java ===
 +
Da der Shop DVD sowie BluRay verkaufen soll ist es sinnvoll eine gemeinsame Basisklasse zu erstellen.
 +
Da Filme in einem Katalog landen, ist es sinnvoll diese von PersistentProduct erben zu lassen, dadurch können sie im PersistenCatalog verwendet werden.
 +
Man beachte, dass die Klasse mit @Entity annotiert ist und einen parameterlosen Konstruktor besitzt, da dieser aber nicht direkt genutzt werden soll, ist er mit @Deprecated markiert.
 +
 +
Auf den Primärschlüssel kann verzichtet werden, da sich dieser schon in PersistentProduct befindet.

Revision as of 22:41, 28 October 2013

Einleitung

Ein kleines Beispielprojekt, der Videoshop, soll mit Hilfe von Salespoint 5 umgesetzt werden. In dem Videoshop sollen sich Nutzer registrieren und anmelden können, sowie in Katalogen blättern und Filme zu einem Warenkorb hinzufügen können. Außerdem soll jeder Film kommentiert werden können und nur angemeldete Nutzer sollen Filme kaufen können. Ziel ist, das Framework so gut wie möglich zu verwenden und so den zu schreibenden Code zu minimieren.
Es wird erwartet, dass das Guestbook Tutorial durchgearbeitet und verstanden wurde.

JPA Basics

Salespoint5 speichert Daten unter Zu­hil­fe­nah­me der Java Persistence API. Diese bringt einige Anforderungen mit sich, so müssen Klassen, die gespeichert werden sollen:

Alle persistierbaren Klassen in Salespoint5 erfüllen diese Eigenschaft und können somit direkt verwendet werden.

Disc.java

Da der Shop DVD sowie BluRay verkaufen soll ist es sinnvoll eine gemeinsame Basisklasse zu erstellen. Da Filme in einem Katalog landen, ist es sinnvoll diese von PersistentProduct erben zu lassen, dadurch können sie im PersistenCatalog verwendet werden. Man beachte, dass die Klasse mit @Entity annotiert ist und einen parameterlosen Konstruktor besitzt, da dieser aber nicht direkt genutzt werden soll, ist er mit @Deprecated markiert.

Auf den Primärschlüssel kann verzichtet werden, da sich dieser schon in PersistentProduct befindet.

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox