2017-11-24 1 views
1

Im Gegensatz zu den Attributen mit der Persistenz Typ-Eigenschaft festgelegt, die in einer Datenbank beibehalten werden, Dynamische Attribute haben nicht persistente WerteWas ist der Unterschied zwischen dem jalo-Attribut und dem dynamischen Attribut in Hybris?

SAP Hybris Commerce ermöglicht eine nicht-persistente Art von Attribute als Dschalo Attribut bezeichnet oder Nur-jalo-Attribut

Jalo-Attribute sind veraltet und werden durch dynamische Attribute ersetzt.

Ich sehe immer noch Hybris immer noch beide.

Also, was ist der Unterschied zwischen beiden?

Was ist der Zweck von jedem?

Dank

Antwort

2

Eigentlich Hälfte der Antwort ist in der Frage, Both Dschalo und Dynamische Attribute verwendet werden Nicht-beharrte Attribute für Elemente in Hybris zu erstellen.

Aber warum brauchen wir nicht persistente Attribut?

Wie Sie Artikel Klasse in Hybris wissen können erzeugt werden unter Verwendung von ant Befehl, so gibt es keine Möglichkeit gibt, Geschäftslogik manuell auf das Element (weil jedes Mal, wenn ich ant Befehl wird ein neues Element laufen hinzuzufügen sein erzeugt und meine Logik wird auch gelöscht)

ich will Ihnen ein Beispiel geben:

//generated item 
class PersonModel { 
    //persisted attributes 
    String firstname; 
    String lastName; 

    //non-persisted attribute = calculated attribute 
    String getFullName() { 
     return firstname + " " + lastname; 
    } 
} 

Wir stimmen alle darin überein, dass fullname sollte nicht in der Datenbank beibehalten werden, so nehmen wir an, dass getFullName manuell hinzugefügt wird, dann, wie ich zuvor erklärt, wenn wir ant sauber alle Befehl PersonModel laufen wieder neu generiert werden und getFullName() wird ebenfalls gelöscht.

Also das, was Jalo Attribut erstellt, tatsächlich Jalo Elemente werden nur einmal generiert und werden nie entfernt (es kann manuell entfernt werden), so dass wir alle berechnete Attribute in Jalo Element ohne Angst vor dem Löschen hinzufügen können.

//generated item is going to 
//be re-generated after each ant clean all 
class PersonModel { 
    //persisted attributes 
    String firstname; 
    String lastName; 
} 

//Jalo item will be generated once 
//and will never be removed after that 
class PersonJalo { 

    //non-persisted attribute = calculated attribute 
    String getFullName() { 
     return firstname + " " + lastname; 
    } 
} 

Dschalo Attribut ist veraltet und wird durch dynamisches Attribut ersetzt, also sollten wir nie Dschalo mehr verwenden und stattdessen dynamische Attribut verwenden.

+0

Vielen Dank. –

Verwandte Themen