Frage

Ich bin mit Spring MVC erfahren und Stripes versuchen zu entscheiden, ob es für ein neues Projekt auszuprobieren.

In Spring MVC Ich würde Modelldaten aufzubereiten und zu der Ansicht passieren, indem sie es auf eine Karte in dem Modeland Beispiel des Hinzufügen von meinem Controller erstellt. Ich habe Probleme das Äquivalent von dieser für Streifen zu finden.

Es scheint, wie die nächste Parallele haben, ist ein ActionBean meiner Modelldaten und legt ihn den Http hinzuzufügen. Ein ForwardRedirect wird zum Laden wird die Ansicht und die Daten aus der Sitzung abgerufen.

Gibt es eine bessere Unterstützung für einen Front-Controller von Stripes versehen, oder ist dies ein völlig anderes Bauprinzip als Spring MVC? (Dh ich habe Methoden aus der Sicht aufrufen EL unter Verwendung von Daten abzurufen, wie einige der Beispiele tun)

Danke!

War es hilfreich?

Lösung

Ein typisches MVC-Design in Streifen wie etwas aussehen würde wie der Code unten.

Die PPV Einheit wird durch einen Streifen Abfangjäger bereitgestellt automaticaly geladen von Stripersist (aber auch auf eigene Faust einfach implementiert können wenn Sie möchten). So ist in diesem Beispiel anfordernden http://your.app/show-order-12.html einen Auftrag mit der ID 12 aus der Datenbank laden und auf der Seite zeigen wird.

Controller (OrderAction.java):

@UrlBinding("/show-order-{order=}.html")
public class OrderAction implements ActionBean {
    private ActionBeanContext context;
    private Order order;

    public ActionBeanContext getContext() {
        return context;
    }

    public void setContext(ActionBeanContext context) {
        this.context = context;
    }

    public void setOrder(Order order) {
        this.order = order;
    }

    public String getOrder() {
        return order;
    }

    @DefaultHandler
    public Resolution view() {
        return new ForwardResolution(“/WEB-INF/jsp/order.jsp”);
    }
}

(order.jsp):

<html><body>
    Order id: ${actionBean.order.id}<br/>
    Order name: ${actionBean.order.name)<br/>
    Order total: ${actionBean.order.total)<br/>
</body></html>

Modell (Order.java):

@Entity
public class Order implements Serializable {
    @Id @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    private String name;
    private Integer total;

    public String getName() {
        return name;
    }

    public Integer getTotal() {
        return total;
    }   
}

BTW gibt es ein wirklich ausgezeichnetes kurzes Buch auf Streifen, dass deckt alle diese Dinge (!):

Stripes: ... und Java Web-Entwicklung macht wieder Spaß

Andere Tipps

Okay, ich habe es herausgefunden. Attribute hinzugefügt, um die HttpServletRequest (aus dem Kontext abgerufen) ist in der Seite Empfang das ForwardRedirect

IE . Context.getRequest () setAttribute ( "attr1", "Anfrage Attribut 1"); return new ForwardResolution ( "/ WEB-INF / pages / hello.jsp");

In hello.jsp $ {Attr1} verfügbar ist ... yay!

Es ist auf eine schöne Lösung für nopCommerce 3,20 (MVC). Es ist eine Zahlung Plugin unterstützt, autorisiert, autorisieren / capture, Erstattung und teilweise Rückerstattung. PCI-Compliance enthalten, wird keine CC Informationen zu db gespeichert http://shop.wama-net.com/en/stripe -Zahlung-Plugin-for-nopCommerce

Jacky

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top