2015-04-22 65 views
1

我有一個頁面頂部有分頁鏈接。 當我點擊這些頁面時,它會從1-50,51-100等記錄中找到我。 我遇到問題,當我點擊第二個動作,如當我點擊頁面#2 @ModelAttribute值得到空。Spring模型屬性在請求中得到空

這是THA頁網址:http://localhost:8080/tax/taxedYear.html?p=2

這需要我去春來控制器類/taxedYear.html和方法如下:

@RequestMapping(value = "/taxedYear.html", method = RequestMethod.GET)  
public ModelAndView showTaxResults(@ModelAttribute("criteria") 
    Criteria criteria, Model model, HttpSession session, HttpServletRequest request) { 

    String src = criteria.getSource(); 
    System.out.println("src === "+src); 
    //.... 
    // 
    } 

當從標準叫什麼爲空。從previou頁面調用相同的方法,它工作正常。 只有當我單擊頁面URL時纔會發生這種情況,該頁面也調用控制器中的相同方法並另外發送頁面#。

回答

1

Spring reference:

一種上的方法參數@ModelAttribute指示參數應該從模型中檢索。如果模型中不存在,則應首先實例化參數,然後將其添加到模型中。

模型由控制器填充。你假設第二次調用時模型保持不變,但顯然你的假設是錯誤的。因爲Spring初始化模型,我相信你認爲它是持久的。這是合理的方式,模型不應該在HTTP調用中持久化。

+0

請插入一些鏈接提到以上引用的事實!!!! – Dev

+0

@Dev感謝您的提醒。 – mtyurt