I notice that when my Java servlet starts up, the doGet method gets called 3 times. After that, if I refresh the web page that uses that servlet, it only gets called once, as it should. My servlet is running on the Google App Engine, so perhaps this has something to do with that. Or is this normal for any servlet? Here is the servlet code:
package com.example.demos;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*/
@SuppressWarnings("serial")
public class HelloWorldServlet extends HttpServlet {
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
PrintWriter out = resp.getWriter();
out.println("Hello, world");
}
public void init() throws ServletException {
System.out.println("Servlet: init()");
}
public void destroy() {
System.out.println("Servlet: destroy()");
}
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.service(req, resp);
}
protected void processRequest(HttpServletRequest request, HttpServletResponse response) {
System.out.println("Servlet: processRequest()");
}
}