Il vantaggio principale di JSP è che è più facile da codificare e da leggere quando si crea una front-end HTML dinamica.
Questo perché scrivi principalmente HTML e in alcuni punti incorpora il codice Java.
In un servlet dovresti invertire la logica, cioè, scrivi il codice Java e stampare HTML.
Questo perché nel livello di presentazione più il codice è HTML / JS.
D'altra parte, la logica aziendale è nella maggior parte del codice Java parte, quindi in quel caso è meglio usare servlet o pojos (oggetti semplici, antiche java).
Modifica: non c'è differenza di prestazioni dal codice JSP, in quanto tale, non è mai eseguito, è convertito in un servlet.Solo la prima volta che si esegue il JSP dopo che è stato cambiato, ci vuole un po 'più a lungo da eseguire perché deve essere convertito in servlet.
Confronta un semplice programma "Hello World" nel servlet JSP VS:
JSP:
<html>
<head><title>Hello World JSP Page.</title></head>
<body>
<font size="10"><%="Hello World!" %></font>
</body>
</html>
.
servlet
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
pw.println("<html>");
pw.println("<head><title>Hello World</title></title>");
pw.println("<body>");
pw.println("<h1>Hello World</h1>");
pw.println("</body></html>");
}
}
.