ModelAndView传参到JSP页面取不到值
代码如下:
@RequestMapping("/modelandview") public ModelAndView moderAndView(){ ModelAndView mav=new ModelAndView(); //跳转到JSP页面 mav.setViewName("add"); mav.addObject("name","张三"); System.out.println(mav.getModel().get("name")); return mav; }
控制台打印结果显示值已经存入ModelAndView中了,但在JSP页面用EL表达式${name}取值一直无法取出, 页面直接显示 ${name} 而不是存储的值。
JSP页面代码为:
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <h1>hello ,Lily</h1> ${name} </body> </html>
解决:在<%@ page contentType=“text/html;charset=UTF-8” language=“java” %>中加入isELignored=false。
在page directive中的isELIgnored属性用来指定是否忽略。 格式为: <%@ page isELIgnored="true|false"%> 如果设定为真,那么JSP中的表达式被当成字符串处理。 比如下面这个表达式KaTeX parse error: Expected }, got EOF at end of input: …ored="true"时输出为{2000 % 20},而isELIgnored="false"时输出为100。Web容器默认isELIgnored="false"。