3

私は次のものを持てるようにしたいと思います:

@Controller    
public class MyController {

    @RequestMapping(value="/someurl", method=RequestMethod.GET)
    @PreProcess
    @PostProcess
    public String doStuff(ModelMap map) {
        //do stuff
        return "someurl";
    }

}

@PreProcessおよび@PostProcessは任意の名前の注釈です。

私はこれの実用的な例を探していましたが、何も見つかりません。AOPと@Aspectアノテーションの使用法を見てきましたが、非常に複雑であることがわかりました。私がやろうとしていることの実例は素晴らしいでしょう。

私は過去にSpringSecurityをサンプリングしましたが、処理をカスタムにする必要があるため、これは私が必要とするものではありません。

この機能が.NetMVCで利用できることを知っています。春にも利用できることを願っています。

ヘルプやポインタは本当にありがたいです。

4

1 に答える 1

6

@ModelAttributeコントローラーメソッドの前にメソッドを実行するために、メソッドに注釈を付けることができます。または、interceptor

@ModelAttribute

@Controller    
public class MyController {

    @RequestMapping(value="/someurl", method=RequestMethod.GET)
    public String doStuff(@ModelAttribute("something") Something something, ModelMap map) {
        //do stuff
        // here you can do what you want with something it has been provided to you in the method parameters
        return "someurl";
    }

    @ModelAttribute("something")
    public Something something() {
        // do what you need
        return new Something();
    }
}

メソッドは、アノテーションsomething()を持つすべてのメソッドの前、つまりメソッドの前に呼び出されます。@RequestMappingdoStuff()

于 2012-10-25T15:16:20.973 に答える