Getting Started With Servlet & JSP | JAVA
3 min readMar 7, 2021
Java Servlets run on server side for web-based application. JAVA have built-in support for multithreading. Servlet API is Standard Java Extension API, (NOT part of core Java) and available as add-on package.
Servlets are protocol and platform independent server side Java components. Clients may range from simple forms to Java Applets. Servlets used as middle tiers for distributed application systems.
Applications & Usages Modes:
- Database Connection.
- Synchronization (On-line conferencing)
- Virtual Server management.
- Filters chains of Servers.
- HTTP.
- CGI replacement.
- Server side include.
Security:
- Rely on HTTP-specific authentication.
- Secure Socket Layer.
- Java advantage: no memory access violations, strong typing violations. (Servlet will not crash servers.)
- Security Manager. Only trusted servlets will be allow to access network services or local files.
- Support fine grained access control (more secure than MS. ActiveX.)
Performance:
- Servlet run as light weight thread in process.
- CGI run as heavy weight process.
Sample Servlet:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;public class HelloWorld extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
response.setContentType(“text/html”);
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<body>");
out.println("<head>");
out.println("<title>Hello World!</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Hello World!</h1>");
out.println("</body>");
out.println("</html>");
}
}
Java Server Pages Vs Servlets.
- Dynamic Page require for:
- Working on any web or application server.
- Separating the application logic from the appearance of the page.
- Allowing fast development and testing.
- Simplifying the process of developing interactive web-based applications.
- JSP is a new approach to fit this need.
- Servlet , to turn page, have to edit and recompile.
Java Servlet Pages Approach.
- Separating content generation from presentation.
- Emphasizing reusable components.
- Simplifying page development with tags.
- Java Technology benefits (memory management and security.
- Scalability (integrated with J2EE).
JSP Example.
<HTML>
<%@ page language=="java" imports=="com.wombat.JSP.*" %>
<H1>Welcome</H1>
<P>Today is </P>
<jsp:useBean id=="clock" class=="calendar.jspCalendar" />
<UL>
<LI>Day: <%==clock.getDayOfMonth() %>
<LI>Year: <%==clock.getYear() %>
</UL>
<% if (Calendar.getInstance().get(Calendar.AM_PM) ==== Calendar.AM) { %>
Good Morning
<% } else { %>
Good Afternoon
<% } %>
<%@ include file=="copyright.html" %>
</HTML>
JSP Components.
JSP Directives:
<%@ …. %>
JSP Tags:
<jsp:useBean … />
<jsp:setProperty … />
<jsp:getProperty … />
<jsp:include … />
<jsp:forward … />
JSP expression:
<%== … %>
Scripting Elements (scriptlet):
<% … %>
Application Model.