devxlogo

Make Your Servlet Code Reusable

Make Your Servlet Code Reusable

Oftentimes, you have a bit of logic or a block of code that’s repeated in all your servlets. Or you may need to check or validate the doGet() or doPost() methods before you execute either.

An efficient way to do this is to implement your logic in the service() method:

  1. Write a common servlet:
    public class CommonServlet extends HttpServlet{    // Common service that will be triggered for every request.      protected void service(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {    //    // implement any common logic here. Eg. Check whether session has some values or not. Or checkwhether user type etc. You can even add authorization logic here.}    }
  2. Extend all your servlets from the common servlet:
    public class MyBusinessServlet extends CommonServlet{ public void doPost(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {// Your code..       } public void doGet(HttpServletRequest request, HttpServletResponse response) throwsServletException, IOException {// Your code..       }} 

Both doGet() or doPost() will now automatically call CommonServlet’s service() method before the doXXX method is executed?as per Servlet specification.

devx-admin

Share the Post: