尝试获取后台对象中带参数的get方法返回的属性值时,发现 J2EE6 开始支持EL表达式带参数的调用后台方法。
语法格式为:
${对象名.方法名(参数)};
注意此处的方法名是方法全名,EL表达式并不会帮我们自动按照属性名进行首字母大写并在开头拼接get三个字符来寻找相应的get方法获取属性值。
示例:
前台代码为:
<html>
<body>
// 不带参数的获取属性值方法
<p>${elTest.testProp}</p>
// 带参数的获取属性值方法
<p>${elTest.getTestProp("123")}</p>
</body>
</html>
后台对象为:
public class ELTest {
private String testProp;
public String getTestProp() {
return testProp;
}
public String getTestProp(String test) {
return test;
}
public void setTestProp(String testProp) {
this.testProp = testProp;
}
}
Controller代码:
@RequestMapping("/test")
public ModelAndView doTest() {
ModelAndView mav = new ModelAndView();
mav.addObject("elTest", new ELTest());
mav.setViewName("test");
return mav;
}