Vad är filformatet JSP?
.jsp är en server-side-fil som används för att generera dynamiskt webbinnehåll. Formatet introducerades ursprungligen av Sun Microsystems 1999 som JavaServer Pages, men bytte namn till Jakarta Server Pages 2019 när förvaltningen övergick till Eclipse Foundation under Jakarta EE-paraplyet. Precis som PHP eller ASP-filer, bäddar en .jsp-fil in körbar kod i HTML-kod - men det inbäddade språket är Java. Filen lagrar programlogik på servern, som bearbetar den och skickar den färdiga HTML-sidan till webbläsaren.
.jsp-källfiler är vanlig text. Java-kod bäddas in via scriptlet-taggar (<% ... %>), uttryckstaggar (<%= ... %>) eller JSP Expression Language (${...}). Moderna projekt använder ofta JSTL för att hålla affärslogik borta från mallen. Om sidan är skriven som välformaterad XML används filtillägget .jspx istället.
Överväganden för klientsidan. Användaren behöver inte veta vilken teknik en viss webbplats använder. Webbläsaren tar bara emot den HTML-utdata som genereras av servern - .jsp-lagret är helt dolt för besökare. Ingen Java Virtual Machine eller speciella verktyg behövs för att öppna en .jsp-källfil; en vanlig textredigerare räcker.
Säkerhet & trygghet
RISK: LOWFiltillägget .jsp säger ingenting om säkerhet i sig - i en URL är det bara en vanlig webbsida; behandla sidan som vilken webbplats som helst (se upp för nätfiske på inloggningssidor). En nedladdad .jsp är vanligtvis ofarlig HTML eller ett felnamnat dokument, och att öppna den i en textredigerare är alltid säkert. Var försiktig endast om en oväntad .jsp-nedladdning kommer från en okänd källa - inspektera den som text innan du byter namn, och kör aldrig något den försöker starta. (För serveroperatörer är skadliga uppladdade .jsp-filer, s.k. «web shells», ett problem på serversidan, inte en risk för någon som bara tittar på filen.)
Formatdetaljer
i ett nötskalProgram som öppnar JSP-filer
Tekniska detaljer
djup specifikation| Filtyp | Java-webbmall för serversidan; källkod i klartext som blandar HTML-markup med Java-scriptlets, direktiv och EL-uttryck |
| MIME-typ | text/html |
| Textkodning | Vanlig UTF-8 (teckenuppsättning deklareras i direktivet `<%@ page %>`; andra kodningar som ISO-8859-1 stöds) |
| Binär signatur | Ingen - `.jsp`-filer har inga magic bytes; källkoden börjar vanligtvis med `<%@ page ... %>` eller en DOCTYPE/HTML-deklaration |
| Scriptlet-syntax | `<% ... %>` för kodblock, `<%= ... %>` för utdata-uttryck, `<%! ... %>` för fält- och metoddeklarationer |
| Expression Language | `${...}` för omedelbar utvärdering; `#{...}` för fördröjd utvärdering - båda ger åtkomst till beans och variabler utan att bädda in rå Java |
| Serverkrav | Kräver en Jakarta EE-kompatibel servlet-container (Apache Tomcat, Eclipse Jetty, WildFly, etc.); kan inte hanteras av en vanlig HTTP-server |
| Kompileringsmodell | Containern översätter automatiskt `.jsp` till en källfil för en Java-servlet, kompilerar den till `.class`-bytecode, och cachar sedan den kompilerade klassen |
| XML-baserad variant | `.jspx` (JSP-dokument) - strikt välformaterad XML-dialekt; taggbibliotek refereras via XML-namnrymder istället för `<%@ taglib %>` |
| Stöd för taggbibliotek | JSTL (Jakarta Standard Tag Library) och anpassade taggbibliotek som beskrivs av `.tld`-filer minskar beroendet av scriptlets |
| Driftsättning | Paketeras inuti en `.war` (Web Application Archive) tillsammans med servlets, klasser och statiska resurser för driftsättning i en servlet-container |
| Implicita scope-objekt | Fyra inbyggda omfång - page, request, session och application - exponerar attribut som är tillgängliga under motsvarande livstid |
| Implicita variabler | Nio fördefinierade variabler tillgängliga utan deklaration: `request`, `response`, `out`, `session`, `application`, `config`, `pageContext`, `page`, `exception` |
| Förvaltningshistorik | Skapat av Sun Microsystems (JSP 1.0, 1999); blev en del av Java EE; överfördes till Eclipse Foundation som Jakarta Server Pages under Jakarta EE 2019 |
| Släppt | 1999 (JavaServer Pages 1.0); renamed Jakarta Server Pages under Jakarta EE (2019) |
| Öppen standard | Ja · royaltyfri |
| Specifikation | jakarta.ee |
JSP-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om JSP-filer.