Pāriet uz saturu

JavaServer Pages

Vikipēdijas lapa

JavaServer Pages ir servera puses Java tehnoloģija, kas ļauj izveidot dinamiski ģenerētas tīmekļa lapasHTML, XML vai citā formātā. Arhitektoniski JSP var skatīt kā Java servleta augsta līmeņa abstrakciju. Tehnoloģiju izstrādājusi Sun Microsystems1990. gadu beigās.

JSP ļauj statiskā tīmekļa lapā iekļaut Java kodu vai EL formātā rakstītus fragmentus. Kad tīmekļa klients pieprasa lapu, to JSP Servlet Engine apstrādā un izveido servleta pirmkodu, kas ir Java klase. Tad to kompilē Java baitkodā, kuru izpilda Java Virtual Machine. Nākamreiz, kad lietotājs pieprasa šo pašu lapu, tiek palaists iepriekš nokompilētais kods. Tādējādi pirmoreiz lapa veras lēnāk, bet nākamās reizes ātrāk. Ja pirmkods tiek mainīts, tad to no jauna kompilē. JSP pirmkods var arī tikt uzreiz interpretēts, netērējot laiku kompilēšanai, kas ir izdevīgi izstrādes laikā.

JSP pirmkoda fragments:

<%@ page errorPage="myerror.jsp" %> <%@ page import="com.foo.bar" %> <html><head><%! int serverInstanceVariable = 1;%> <% int localStackBasedVariable = 1; %> <table><tr><td><%= toStringOrBlank( "expanded inline data " + 1 ) %></td></tr>

Izveidotais servlets:

packagejsp_servlet;importjava.util.*;importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;importjavax.servlet.jsp.*;importjavax.servlet.jsp.tagext.*;importcom.foo.bar;// Imported as a result of <%@ page import="com.foo.bar" %>importclass_myservletimplementsjavax.servlet.Servlet,javax.servlet.jsp.HttpJspPage{// Inserted as a// result of <%! int serverInstanceVariable = 1;%>intserverInstanceVariable=1;publicvoid_jspService(javax.servlet.http.HttpServletRequestrequest,javax.servlet.http.HttpServletResponseresponse)throwsjavax.servlet.ServletException,java.io.IOException{javax.servlet.ServletConfigconfig=;// Get the servlet configObjectpage=this;PageContextpageContext=;// Get the page context for this requestjavax.servlet.jsp.JspWriterout=pageContext.getOut();HttpSessionsession=request.getSession(true);try{out.print("<html>\r\n");out.print("<head>\r\n");// From <% int localStackBasedVariable = 1; %>intlocalStackBasedVariable=1;out.print("<table>\r\n");out.print(" <tr><td>");// From <%= toStringOrBlank( "expanded inline data " + 1 ) %>out.print(toStringOrBlank("expanded inline data "+1));out.print(" </td></tr>\r\n");}catch(Exception_exception){// Clean up and redirect to error page in <%@ page errorPage="myerror.jsp" %>}}}

Ārējās saites

[labot šo sadaļu | labot pirmkodu]
Wikibooks
Wikibooks
Wikibooks ir grāmata par šo tēmu
close