This J2EE tips demostrates an important aspect of web programming. Since requests to your webpage may and probably will occur concurrently which means multiple threads will be running your code simultaneously. This means you have to take care that one thread do not interfere with processing of other threads, therefore thread-safety is an important issue in web application. Developers should be aware of this issue and should make sure their code works in a thread-safe way.

import javax.servlet.*;
import javax.servlet.http.*;

public class IamThreadSafeServlet extends HttpServlet 
  implements SingleThreadModel {

  /*SingleThreadModel is an Marker Interface which we 
  have to implement to make a servlet thread safe*/
  private ServletConfig config;

  public void init (ServletConfig config)
      throws ServletException {
        this.config = config;

  public void doGet (HttpServletRequest req,
      HttpServletResponse res throws ServletException, IOException  {
    res.setContentType"text/html" );
        PrintWriter out = res.getWriter();
    out.println"<html>" );
        out.println"<head>" );
        out.println"<title>This is A Thread safe Servlet</title>" );
        out.println"</head>" );
        out.println"<body>" );
        out.println"<h1>A Sample Servlet</h1>" );
        out.println"</body>" );
        out.println"</html>" );

Parent Category: Java EE Tips