2013-03-18 74 views
0

我正在浏览Spring API。我经历了ModelAndView类。我在课堂上发现了两个返回Map的mehods。一个是getModel(),另一个是getModelInternal()。他们都返回地图。这些方法有什么区别。 谢谢。ModelAndView Spring MVC

回答

2

的方法检查的javadoc:

/** 
* Return the model map. May return {@code null}. 
* Called by DispatcherServlet for evaluation of the model. 
*/ 
protected Map<String, Object> getModelInternal() { 
    return this.model; 
} 

/** 
* Return the model map. Never returns {@code null}. 
* To be called by application code for modifying the model. 
*/ 
public Map<String, Object> getModel() { 
    return getModelMap(); 
} 

所以,一个客户端调用 - 另一个由框架,一个可为空 - 另一种不能为空。

+0

您能否就此进行阐述,我们的意思是由应用程序调用。意思是,例如,如果我们在模式中添加一个Object说Employee,那么这两个方法都会返回什么值。 – Kumar 2013-03-18 17:11:38

+0

getModel将被您的代码使用(并且它不是null),getModelInternal它将被Spring DispatcherServlet(Spring的一部分)使用并且可以为空。所以,只需使用getModel() – 2013-03-18 20:24:43

相关问题