大家先看一段简单的代码:
package zhou.Servlets;
import java.io.*;
import javax.servlet.*;
import java.util.*;public class BaseServlet extends GenericServlet
{
public void service(ServletRequest req,ServletResponse res)
throws ServletException,IOException
{
res.setCharacterEncoding("gb2312");
res.setContentType("text/html");
PrintWriter out = res.getWriter();
RequestDispatcher disTop = req.getRequestDispatcher("topServlet");
RequestDispatcher disLeft = req.getRequestDispatcher("leftServlet");
String uri =req.getParameter("key");
if( uri == null)
{
uri = "firstServlet";
}
RequestDispatcher disRight = req.getRequestDispatcher(uri);
RequestDispatcher disbottom = req.getRequestDispatcher("bottomServlet");
disTop.include(req,res);
disLeft.include(req,res);
disRight.include(req,res);
disbottom.include(req,res);
out.flush();
out.close();
}}
既然ServleRequest和ServletResponse都是接口 而接口的方法体是空的
那么 为什么可以使用ServletResponse 的引用Res来调用它的方法呢?
package zhou.Servlets;
import java.io.*;
import javax.servlet.*;
import java.util.*;public class BaseServlet extends GenericServlet
{
public void service(ServletRequest req,ServletResponse res)
throws ServletException,IOException
{
res.setCharacterEncoding("gb2312");
res.setContentType("text/html");
PrintWriter out = res.getWriter();
RequestDispatcher disTop = req.getRequestDispatcher("topServlet");
RequestDispatcher disLeft = req.getRequestDispatcher("leftServlet");
String uri =req.getParameter("key");
if( uri == null)
{
uri = "firstServlet";
}
RequestDispatcher disRight = req.getRequestDispatcher(uri);
RequestDispatcher disbottom = req.getRequestDispatcher("bottomServlet");
disTop.include(req,res);
disLeft.include(req,res);
disRight.include(req,res);
disbottom.include(req,res);
out.flush();
out.close();
}}
既然ServleRequest和ServletResponse都是接口 而接口的方法体是空的
那么 为什么可以使用ServletResponse 的引用Res来调用它的方法呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货