In this, we will learn what is JSP and why we use JSP. Basically, it is an introductory part of JSP. We will learn all the topics related to the JSP tutorial. But first, you need a basic understanding of JSP. Get to Know the Java Server Pages Syntax, Features, Advantages, Disadvantages, Difference Between JSP and Servlet explained in detail.

## What is JSP?

JSP stands for Java Server Pages. It is a server-side technology. It is used to create a dynamic web application. The key part of the Java 2 Enterprise Edition(J2EE) platform is the JavaServer Pages(JSP) technology. To simplify dealing with presentation and dynamic data on web pages is the goal of JSP technology.

The JSP technology is based on servlet technology, in fact, all the JSP pages are eventually compiled into a servlet code. However, it is found that writing a JSP page is far less involved compared to writing a servlet code. This is written by those who don’t have java experience. A JSP page is a markup document that can be either in JSP syntax or in Extensible Markup Language(XML ) format.

## JSP Syntax

JSP has the following syntaxes.

Declaration Tag: You can use this tag to declare variables and the syntax is as under

Syntax:-
<%! Dec var %>
Example:-
<%! int var=10; %>

Java Scriplets: Using these you can add any number of Java Code, Expressions, Variables.

Syntax:-
<% java code %>

JSP Expression: It evaluates the expression and converts it to a string.

Syntax:-
<%= expression %>
Example:-
<% num1 = num1+num2 %>

JAVA Comments: It includes the text for information and should be ignored.

Syntax:-
<% -- JSP Comments %>

## Features of JSP

• Coding in JSP is easy as it is a simple addition of JAVA code to HTML/XML.
• In JSP we use action tags, custom tags, etc. for the reduction of code.
• We can easily connect to the Database and allows us to read or write data to the database.
• Allows us to create dynamic web pages that help the user to interact in a real-time environment. Permits you to make interactive websites.
• Powerful, Portable, Flexible, and Easy to Maintain as they are browser and server independent.
• There is no need for Redeployment and Re-Compilation. It is dynamic, secure, and platform-independent.
• It has all features of servlets, implicit objects, and custom tags.

Also, Check:

• Whenever we are developing the one JSP page we no need to configure it inside the web.xml file.
• Presenting the data is very fast compared to a servlet.
• Whenever we are modifying the JSP we no need to start the server, stop the server and restart the server.
• The JSP pages are allowed by the HTML code and textual data and java code also.

## Rule of JSP Page

• Whenever we are developing the JSP page must and should we need to save extension is .jsp.
• After developing the JSP page must and should we need to place it inside the application scope(under root folder).

## Drawbacks of Servlet Technology

• Whenever we are developing the servlet must and should we have to configure it inside the web.xml file.
• Whenever we are modifying the servlet must and should we need to stop the server and we need to compile the servlet and restart the server.
• Servlet is allowed by the java code but not text and HTML code.
• Whenever we are using the servlet presenting the data is very slow.

## Difference between Servlets and JSP

The difference between servlet and JSP is given below:

1. JSP is an extension of a servlet. It contains all features of servlets and extra it contains an implicit object, tags, custom action, etc.
2. Whenever we are modifying in servlet we have to recompile, redeploy and restart the server. If we do any modification in JSP just the refresh button is enough to reflect the changes.
3. Servlets require more java knowledge, while JSP requires less java knowledge because JSP is tag-based.
4. In the MVC(Model Control View) the servlets are acting as a controller part and JSP is acting as a Model part.
5. In servlets, we are mixing both business logic as well as presentation logic, But in JSP we can separate both presentation and business logic.
6. Servlets are good at writing Business logic while JSP is good at writing presentation logic.
7. To access the servlets web.xml file are mandatory, But to access the JSP file the web.xml file is optional.
8. Performance-wise servlets are better than JSP.
9. Life Cycle methods of servlets are init(),service() and destroy(),while the life cycle methods of JSP are _jspinit(), _jspservice(), _jspdestroy().