Вопрос

Я испытываю с Spring MVC и пробую полосы, чтобы решить, пробовать ли это для нового проекта.

В Spring MVC я бы подготовим модель данных и пропустите его к представлению, добавив его на карту в экземпляре ModelandView, созданный моим контроллером. У меня проблемы с поиском эквивалента этого для полос.

Похоже, что ближайшая параллель - это подготовить действие Beachbean Data и добавить ее в HTTPSESE. Переместитель используется для загрузки вида, а данные доступны с сеанса.

Есть ли лучшая поддержка переднего контроллера, предоставляемых полосами, или это совершенно другой принцип дизайна, чем весна MVC? (т.е. я должен вызывать методы с вида с использованием EL для извлечения данных, как и некоторые из примеров)

Спасибо!

Это было полезно?

Решение

Типичный дизайн MVC в полосках будет выглядеть как что-то вроде кода ниже.

Сущность JPA является автоматическим, загруженным перехватчиком полос, предоставляемых Стриптист (Но это также может легко реализовать самостоятельно Если вы хотите). Таким образом, в этом примере, просят http://your.app/show-order-12.html. загрузит заказ с ID 12 из базы данных и покажет его на странице.

Контроллер (USTACTION.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”);
    }
}

View (outdow.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 снова весело

Другие советы

Хорошо, я понял это. Атрибуты, добавленные в httpservletrequest (извлечено из контекста), доступны на странице, получающей переведен

Т.е. context.getrequest (). SetaTtribute ("attr1", «атрибут запроса 1»); Вернуть новую FlowResolution (»/ Web-Inf / Pages / Hello.jsp");

В Hello.jsp $ {attr1} доступен ... yay!

Есть на одном хорошем решении для NOPCommerce 3.20 (MVC). Это плагин, поддерживающий, авторизую, авторизую / захват, возврат и частично возврат. Соблюдение PCI включена, информация CC не сохраняется на БДhttp://shop.wama-net.com/en/stripe-payment-plugin-for-nopcommerce.

Оздоровительный

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top