5

この SimpleFormController を変換して、Spring MVC 2.5 で導入されたアノテーション サポートを使用したいと考えています。

ジャワ

public class PriceIncreaseFormController extends SimpleFormController {

    ProductManager productManager = new ProductManager();

    @Override
    public ModelAndView onSubmit(Object command)
            throws ServletException {

        int increase = ((PriceIncrease) command).getPercentage();
        productManager.increasePrice(increase);

        return new ModelAndView(new RedirectView(getSuccessView()));
    }

    @Override
    protected Object formBackingObject(HttpServletRequest request)
            throws ServletException {
        PriceIncrease priceIncrease = new PriceIncrease();
        priceIncrease.setPercentage(20);
        return priceIncrease;
    }

}

春の設定

<!-- Include basic annotation support -->
<context:annotation-config/>        

<!-- Comma-separated list of packages to search for annotated controllers. Append '.*' to search all sub-packages -->
<context:component-scan base-package="springapp.web"/>  

<!-- Enables use of annotations on controller methods to map URLs to methods and request params to method arguments  -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>

<bean name="/priceincrease.htm" class="springapp.web.PriceIncreaseFormController">
    <property name="sessionForm" value="true"/>
    <property name="commandName" value="priceIncrease"/>
    <property name="commandClass" value="springapp.service.PriceIncrease"/>
    <property name="validator">
        <bean class="springapp.service.PriceIncreaseValidator"/>
    </property>
    <property name="formView" value="priceincrease"/>
    <property name="successView" value="hello.htm"/>
    <property name="productManager" ref="productManager"/>
</bean>

/priceincrease.htm基本的に、 Bean のすべての XML 構成を Java クラス内の注釈に置き換えたいと考えています。これは可能ですか?もしそうなら、私が使用すべき対応する注釈は何ですか?

ありがとう、ドン

4

2 に答える 2

0

誰かが最近の MVC でこのプロジェクトを完成させ、それが github にあるので、Spring のチュートリアルと比較してすべてのクラスがどのように変更されたかを見ることができます。

リンク: PriceIncreaseFormController

于 2015-07-28T11:55:53.383 に答える