Spring框架,使用ModelMap傳值,jsp無法獲取!
阿新 • • 發佈:2019-02-11
原controller中的程式碼片段:
@RequestMapping
public String sayHi() {
ModelMap model = new ModelMap();
model.addAttribute("message", "Hello there!");
return "hello";
}
jsp頁面程式碼(hello.jsp):
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hi</title>
</head>
<body>
${message}
</body>
</html>
執行發現頁面什麼都沒有!
後來發現一篇部落格:http://bao1073740756-126-com.iteye.com/blog/1549597
其中有提到:“ModelMap的例項是由bboss mvc框架自動建立並作為控制器方法引數傳入,使用者無需自己建立。”
於是將controller程式碼改為:
@RequestMapping
public String sayHi(ModelMap model) {
model.addAttribute("message", "Hello there!");
return "hello";
}
重新執行,OK!
還有遇到一種情況是jsp頁面重頭到尾只打印 ${message},網上的解決方案是在jsp頁面頭加上:
<%@ page isELIgnored="false"%>
問題應該就能解決了,原因是EL無法被解析(以上是在學習Spring框架中遇到的一點問題,也希望能對同樣遇到此問題的Брат有所幫助