gpt4 book ai didi

java - Spring 模型属性在请求中获取 null

转载 作者:行者123 更新时间:2023-11-30 08:14:53 27 4
gpt4 key购买 nike

我有一个页面,顶部有分页链接。当我单击页面时,它会从记录 1-50、51-100 等中跳转。当我单击第二个操作(例如单击第 2 页 @ModelAttribute 值获取 null 时)时,我遇到问题。

这是页面网址:http://localhost:8080/tax/taxedYear.html?p=2

它带我到带有/taxedYear.html的spring Controller 类,方法如下:

@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);
//....
//
}

当调用它时,条件中的任何内容都是空的。从上一页调用相同的方法并且工作正常。仅当我单击页面网址时才会发生这种情况,该网址也会在 Controller 中调用相同的方法并另外发送页面#。

最佳答案

来自Spring reference:

An @ModelAttribute on a method argument indicates the argument should be retrieved from the model. If not present in the model, the argument should be instantiated first and then added to the model.

模型由 Controller 填充。您假设第二次调用时模型保持不变,但显然您的假设是错误的。因为 Spring 初始化了模型,所以我相信你认为它是持久的。这是合理的方式,模型不应该在 HTTP 调用中持久化。

关于java - Spring 模型属性在请求中获取 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29807257/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com