Spring 3 MVC - 有什么用的吗?非常简单的用例不起作用

时间:2010-06-09 14:09:46

标签: java spring-mvc

的index.jsp

...
<h1> ${myobject} </h1>
...

HomeController.java

@RequestMapping(value = "/index")
public ModelAndView indexPath() {
    System.out.println("going home");
    return new ModelAndView("index", "myobject", "isastring");
}

输出:

going home

索引上的<h1>没有显示任何内容,这怎么可能?我绝对不能让我的index.jsp显示这个bean,我尝试使用usebean,我已经尝试将它存储在会话中,现在我直接将它放在模型中。什么都行不通。春天3就像其他春天一样,非常令人沮丧。

2 个答案:

答案 0 :(得分:1)

所犯的错误不在发布的代码中,而是在导入

import org.springframework.web.**portlet**.ModelAndView;

而不是:

import org.springframework.web.**servlet**.ModelAndView;

答案 1 :(得分:0)

首先,确保框架实际上呈现了您认为的JSP。将一些其他静态内容添加到页面中并使其首先运行。

打印到System.err,或者更确切地说,使用日志框架。

尝试SLF4J,它几乎被普遍理解。

Logger logger = LoggerFactory.getLogger(MyClass.class);
logger.info("going home");

然后,我发现使用约定和注释要容易得多。

@RequestMapping(value = "/index")
public void index(ModelMap model) {
    System.err.println("going home");
    model.addAttribute("myobject", "isastring");
}

按照惯例,将呈现的视图将是从名称“index”解析的视图,它与上面的代码相同。这是因为方法返回类型为void。

支持将ModelMap添加到@RequestMapping带注释的方法中,并自动为您提供要填充的模型。