Java 哪个类为RequestDispatcher forward()和include()方法提供实现
RequestDispatcher对象是否退出,因为它是一个接口,我知道我们无法创建对象到接口。 那么下面的代码中发生了什么呢Java 哪个类为RequestDispatcher forward()和include()方法提供实现,java,jakarta-ee,requestdispatcher,Java,Jakarta Ee,Requestdispatcher,RequestDispatcher对象是否退出,因为它是一个接口,我知道我们无法创建对象到接口。 那么下面的代码中发生了什么呢 RequestDispatcher requestDispatcher = request.getRequestDispatcher('somePage'); 我们正在为RequestDispatcher或实现RequestDispatcher的子类创建对象 提前感谢。RequestDispatcher是一个接口,我们不能用它创建对象。因此,它是实现Request
RequestDispatcher requestDispatcher = request.getRequestDispatcher('somePage');
我们正在为RequestDispatcher或实现RequestDispatcher的子类创建对象
提前感谢。RequestDispatcher是一个接口,我们不能用它创建对象。因此,它是实现RequestDispatcher的类的一个对象,您在调用getRequestDispatcher()时会得到它
您需要有Servlet实现的源代码(这取决于您使用的容器)才能查看提供实现的类 您是对的,
RequestDispatcher
是一个接口,您无法创建此接口的对象
现在请看:
request.getRequestDispatcher('somePage')代码>此方法返回一个实现RequestDispatcher的类,该类完全取决于您使用的服务器。
对于例如,对于GlassFish server,它返回org.apache.catalina.core.ApplicationDispatcher
对象,并且已经由@Pshemo告知。要回答标题中的问题:它最可能取决于容器。在Glassfish 4.0上,如果您打印request.getRequestDispatcher(“someResource”).getClass()的结果,您将看到org.apache.catalina.core.ApplicationDispatcher
。