哪个类为RequestDispatcher forward()和include()方法提供实现

时间:2014-02-26 11:05:39

标签: java java-ee requestdispatcher

RequestDispatcher对象是否退出,因为它是一个接口,并且我知道我们无法创建一个接口对象。 那么下面的代码中发生了什么

RequestDispatcher requestDispatcher = request.getRequestDispatcher('somePage');  

我们是否正在为RequestDispatcher或实现RequestDispatcher的子类创建对象。

提前致谢。

2 个答案:

答案 0 :(得分:0)

RequestDispatcher是一个接口,我们无法使用它创建一个对象。因此,该类的一个对象实现了在调用getRequestDispatcher()时获得的RequestDispatcher。

您需要拥有Servlet实现的源代码(这取决于您使用的容器)才能看到提供实现的类。

答案 1 :(得分:0)

你是对的,RequestDispatcher是一个我们无法创建此对象的接口。

现在看:

request.getRequestDispatcher('somePage');此方法返回一个实现RequestDispatcher的类,该类完全取决于您使用的服务器。 对于Ex。对于Glass Fish服务器,它返回org.apache.catalina.core.ApplicationDispatcher对象,它已经被@Pshemo告知。