我在Spring MVC方面经验丰富,并正在尝试进行条纹决定是否尝试为新项目尝试。

在Spring MVC中,我将准备模型数据,并通过将其添加到由我的控制器创建的ModelAndView实例中的地图中传递到视图。我很难找到与条纹的等效物。

似乎最接近的是让ActionBean准备我的模型数据,并将其添加到HTTPSESSION中。向前雷置用于加载视图,并从会话中访问数据。

是否可以更好地支持条纹提供的前控制器,或者这与Spring MVC完全不同? (即,我必须使用EL从视图中调用方法来检索数据,就像某些示例一样)

谢谢!

有帮助吗?

解决方案

条纹中的典型MVC设计看起来像下面的代码。

JPA实体是由条纹拦截器自动加载的 脱衣舞者 (但这也可以轻松实施 独自一人 如果你希望)。因此,在此示例中,请求 http://your.app/show-order-12.html 将从数据库中加载带有ID 12的订单,并将其在页面上显示。

控制器(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>

模型(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;
    }   
}

顺便说一句,有一本非常出色的简短(!)在条纹上涵盖所有这些东西:

条纹:... Java Web开发再次很有趣

其他提示

好吧,我已经弄清楚了。添加到HttpservletRequest的属性(从上下文中检索)可在接收到expertredirect的页面中获得

ie context.getRequest()。setAttribute(“ attr1”,“请求属性1”);返回新的forwardresolution(“/web-inf/pages/hello.jsp”);

在Hello.jsp $ {attr1}中可用...是的!

NopCommerce 3.20(MVC)有一个不错的解决方案。这是支付,授权,授权/捕获,退款和部分退款的付款插件。包括PCI合规性,不存储CC信息在DB上http://shop.wama-net.com/en/stripe-payment-plugin-for-nopcommerce

杰基

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top