2017-09-14 35 views

答えて

0

私はいくつかのページと回答を読んでいると、本当にどんな違いがあるようには思えません。味の物質。 ModelAndViewオブジェクトはモデルとビューをラップします。 Stringを返すときに暗黙的に行われているようです。あなたが好む方法を使用してください。

あなたは戻り値の型についてはここで読むことができます: - モデル https://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-ann-return-types

+0

いいえ、私はどこかで読ん違いが1つあります。 ModelMapは、あるコントローラメソッドから別のコントローラメソッドにModelデータを送信する必要がある場合に使用されます。モデルデータを別のコントローラメソッドに引数として渡すことができます。しかし、ほんの一例を挙げて説明をしたかっただけです。 – SuryaN

0
  1. モデル

    ここで最も基本的な概念で始まるのをしてみましょう。簡単に言えば、モデルはビューのレンダリングに使用される属性を提供できます。

    が使用可能なデータとビューを提供するために、我々は、単にそのモデルオブジェクトにこのデータを追加します。また、属性を持つマップはモデルのインスタンスにマージすることができます。

    @GetMapping("/showViewPage") 
    public String passParametersWithModel(Model model) { 
        Map<String, String> map = new HashMap<>(); 
        map.put("spring", "mvc"); 
        model.addAttribute("message", "Baeldung"); 
        model.mergeAttributes(map); 
        return "viewPage"; 
    } 
    
  2. ただ、上記のモデル・インターフェースのような

    ModelMap

    は、ModelMapもビューをレンダリングするために値を渡すために使用されます。

    @GetMapping("/printViewPage") 
    public String passParametersWithModelMap(ModelMap map) { 
        map.addAttribute("welcomeMessage", "welcome"); 
        map.addAttribute("message", "Baeldung"); 
        return "viewPage"; 
    } 
    
  3. のModelAndView

    ビューに値を渡すために、最終的なインターフェース:ModelMapの利点は、それが私たちに値のコレクションを渡すと、彼らは地図上にあったかのように、これらの値を治療する能力を与えていますModelAndViewです。 このインタフェースは、私たちは1つのリターンでSpring MVCのに必要なすべての情報を渡すことができます:

    @GetMapping("/goToViewPage") 
    public ModelAndView passParametersWithModelAndView() { 
        ModelAndView modelAndView = new ModelAndView("viewPage"); 
        modelAndView.addObject("message", "Baeldung"); 
        return modelAndView; 
    } 
    
関連する問題