Different ways to create a Servlet Programe

There are three approaches to develop a servlet programe,those are listed bellow

approach -1
            Take a java class that implementing javax.servlet.Servlet(Interface)  and provide implementation to all five methods of that interface
approach -2
            Take a java class extending from javax.servlet.GenericServlet(class) and provide implementation to public void service(-,-) method
approach -3
            Take a java class extending from javax.servlet.http.HttpServlet(class) and override one of the two service(-,-) method and one of the seven doXXX(-,-) method

all web servers are designed based on the protocol http,so it is recomended to use approach3