springmvc 不解析EL表达式的解决办法

这是一个spring mvc初学者可能会遇到的问题。代码如下:

@Controller
@RequestMapping(value="/home")
public class HomeController {
    @RequestMapping(value = "/index")
    public ModelAndView Index(Model model)
    {
        model.addAttribute("msg", "hello,springmvc");
        return new ModelAndView("index");
    }
}



Insert title here


${msg}

运行结果不是我们希望的hello,springmvc,而是${msg}。 
导致这个结果的原因是JSP的版本问题,有可能你的项目目前的默认版本是1.2,这个版本默认是不开启EL表达式的。

解决办法有两个,最直接的办法是,在JSP页面的上方加入一个标签,开启EL表达式

<%@ page isELIgnored="false" %>

当然,如果每个页面都要加这么一行的话也很不爽,你可以将你的web.xml中的web-app节点加上下面的属性


      ......
  

就会使用JSP2.0,而JSP2.0默认是开启EL表达式的。

你可能感兴趣的:(springmvc 不解析EL表达式的解决办法)