我希望Servlet始终执行相同的任务。无论是GET还是POST。
目前,我只是从doGet()
调用doPost()
,效果很好。
然后,我尝试覆盖service()
方法,并且我认为它也将以相同的方式工作。但事实并非如此!
该代码以某种方式被执行,但是响应不会生成该网页:
response.getWriter();
response.println(string);
该代码适用于doGet / doPost方法,但不适用于该服务。为什么?
Servlet:
class MyWebServlet extends HttpServlet {
@Override
public void service(ServletRequest request, ServletResponse response) {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String string = "teststring";
out.println(string);
}
}
最佳答案
将public void service(ServletRequest request, ServletResponse response)
更改为public void service(HttpServletRequest request,HttpServletResponse response)
,它应该可以工作。