Download - JSP lapok - ms.sapientia.ro
![Page 1: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/1.jpg)
JSP lapok
ANTAL Margit
Sapientia - EMTE, Pannon Forras ,,Egyseges erdelyi felnottkepzes aKarpat-medencei halozatban”
2010
ANTAL Margit JSP lapok
![Page 2: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/2.jpg)
JSP lapok
JSP alapfogalmak
JSP szkriptelemek
JSP standard tagok
Expression Language
ANTAL Margit JSP lapok
![Page 3: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/3.jpg)
Hello szervlet reszlet (1)
import java.io*;import javax.servlet.*;import javax.servlet.http.*;public class HelloWorldServlet extends HttpServlet {
private static final String DEFNAME ="Vilag";
protected void generateResponse(...){}
protected void doGet(...){generateResponse(request, response);
}
protected void doPost(...){generateResponse(request, response);
}}
ANTAL Margit JSP lapok
![Page 4: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/4.jpg)
Hello szervlet reszlet (2)
protected void generateResponse(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();String name = request.getParameter("name");if( name == null || name.length() == 0 )
name = DEFNAME;out.println("Hello, "+name+"!");out.close();
}
ANTAL Margit JSP lapok
![Page 5: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/5.jpg)
Hello szervlet konfiguralas
<servlet-mapping><servlet-name>HelloWorldServlet</servlet-name><url-pattern>/hello.view</url-pattern>
</servlet-mapping>
ANTAL Margit JSP lapok
![Page 6: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/6.jpg)
Hello JSP lap
<%! private static final StringDEFNAME = "vilag"; %>
<html><head>
<title>JSP Page</title></head><body><%
String name = request.getParameter("name");if( name == null || name.length() == 0 )name = DEFNAME;
%><h2>Hello, <%= name %> !</h2></body>
</html>
ANTAL Margit JSP lapok
![Page 7: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/7.jpg)
JSP lapok eletciklusa
void jspInit()
void _jspService(HttpServletRequest,HttpServletResponse)
void jspDestroy()
ANTAL Margit JSP lapok
![Page 8: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/8.jpg)
JSP lap
1 JSP lap atalakıtasa szervlette: foo.jsp → foo jsp.java,minden modosıtas utan
2 A szervlet fordıtasa: foo jsp.java → foo jsp.class
3 A foo jsp.class fajl betoltese
4 A foo jsp osztaly peldanyosıtasa
5 A jspInit metodus meghıvasa a letrehozott peldanyra
6 HTTP keresek kiszolgalasa: jspService metodus hıvasaval
7 A jspDestroy metodus hıvasa a komponens eltavolıtasakor
ANTAL Margit JSP lapok
![Page 9: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/9.jpg)
JSP szkriptelemek
Szkriptelem Pelda
Megjegyzes < %−−megjegyzes −−% >Direktıva < %@ direktiva % >Deklaracio < %! deklaracio % >Szkriptlet < % szkriptlet % >Kifejezes < % = kifejezes % >
ANTAL Margit JSP lapok
![Page 10: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/10.jpg)
Megjegyzesek
HTML megjegyzes: <!−− HTML megjegyzes −− >, reszelesz a HTTP valasznak, tehat a kiszolgalo ezt is elkuldi abongeszonek
JSP megjegyzes: < %−− JSP megjegyzes −−% >, a JSPmegjegyzes csak a JSP lapon lathato, ez nem kerul bele alapbol eloallıtott szervlet osztalyba, illetve a HTTP valaszbasem
Java megjegyzes: < %/∗ Java megjegyzes / ∗% >, a Javamegjegyzes belekerul a JSP lapbol eloallıtott szervlet osztalykodjaba, de nem kerul bele a HTTP valaszba
ANTAL Margit JSP lapok
![Page 11: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/11.jpg)
Direktıvak
page:pl. Java import utasıtasok
< %@ page import = ”java.util .∗, java.io. ∗ ” % >
include: egy masik komponens tartalmanak beszurasa
< %@ include file = ”banner .jsp” % >
taglib: elemkonyvtarak hasznalata
< %@ taglib uri = ”tlds/taglib.tld” prefix =”mytag” % >
ANTAL Margit JSP lapok
![Page 12: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/12.jpg)
Deklaraciok
Szintaxis
< %! deklaracio % >
Peldak:
1. <%! int counter = 0; %>
2. <%!public void jspInit(){
//}%>
3. <%!public void jspDestroy(){
//}%> ANTAL Margit JSP lapok
![Page 13: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/13.jpg)
Szkriptletek
<% for( int i=0; i<10; ++i){%><h2>Hello World!</h2>
<% }%>
ANTAL Margit JSP lapok
![Page 14: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/14.jpg)
Kifejezesek
Kifejezesek
< % = a% >, < % = b% >
< % = a + b + 10% >
ANTAL Margit JSP lapok
![Page 15: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/15.jpg)
Implicit objektumok
Objektum Tıpus
request javax.servlet.http.HttpServletRequestresponse javax.servlet.http.HttpServletResponseout javax.servlet.jsp.JspWritersession javax.servlet.http.HttpSessionapplication javax.servlet.ServletContextconfig javax.servlet.HttpServletConfigpageContext javax.servlet.jsp.PageContextpage java.lang.Objectexception java.lang.Throwable
ANTAL Margit JSP lapok
![Page 16: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/16.jpg)
A page direktıva
language
extends
buffer
autoFlush
session
import
isThreadSafe
info
contentType
pageEncoding
isELIgnored
errorPage
isErrorPage
ANTAL Margit JSP lapok
![Page 17: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/17.jpg)
Az include direktıva
<%@ include file="header.jsp" %>
Fontos!!!
A beillesztes meg szervlette alakıtas elott tortenik.
ANTAL Margit JSP lapok
![Page 18: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/18.jpg)
JSP standard tagok
<jsp:prefix .../>
<jsp:prefix ...>...
</jsp:prefix>
ANTAL Margit JSP lapok
![Page 19: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/19.jpg)
JavaBeans komponensek
Jellemzok:
nincs publikus attributum
minden attributumhoz van get/set metodus
van parameter nelkul hıvhato konstruktor
szerializalhato
ANTAL Margit JSP lapok
![Page 20: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/20.jpg)
JSP standard tagok
<jsp:useBean.../><jsp:setProperty.../><jsp:getProperty.../><jsp:include.../><jsp:param.../><jsp:forward.../>
ANTAL Margit JSP lapok
![Page 21: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/21.jpg)
A useBean tag
<jsp:useBeanid="beanName"scope="page|request|session|application"class="className"
/>
ANTAL Margit JSP lapok
![Page 22: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/22.jpg)
useBean pelda
<jsp:useBean id="course" scope="request"class="model.Course">
<%course.setName ( request.getParameter("name"));course.setPrice( Integer.parseInt
(request.getParameter("price")));
%></jsp:useBean>
ANTAL Margit JSP lapok
![Page 23: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/23.jpg)
A setProperty tag
<jsp:setProperty name="beanName" propertyexpresion />
property="*"
property="propertyName"
property="propertyName" param="paramName"
property="propertyName" value="propertyValue"
ANTAL Margit JSP lapok
![Page 24: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/24.jpg)
setProperty pelda(2)
<jsp:setProperty name="course" property="name"/>
Ekvivalens Java kod:
course.setName(request.getParameter("name"));
ANTAL Margit JSP lapok
![Page 25: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/25.jpg)
setProperty pelda(2)
<jsp:setProperty name="course" property="name"param="nev" />
Ekvivalens Java kod:
course.setName(request.getParameter("nev"));
ANTAL Margit JSP lapok
![Page 26: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/26.jpg)
setProperty pelda(3)
<jsp:setPropertyname="course"property="name"value=’<%= metodus() %>’
/>
Ekvivalens Java kod:
course.setName(metodus());
ANTAL Margit JSP lapok
![Page 27: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/27.jpg)
setProperty pelda(4)
<jsp:setProperty name="course" property="*" />
ANTAL Margit JSP lapok
![Page 28: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/28.jpg)
A getProperty tag
Szintaxis:
<jsp:getProperty name="beanName"property="propertyName"/>
Hasznalat:
<jsp:getProperty name="course"property="price"/>
Ekvivalens Java kod:
out.print(course.getPrice());
ANTAL Margit JSP lapok
![Page 29: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/29.jpg)
Az include tag
beagyazo.jsp:
<%! String name="Hello"; %><jsp:include page="beagyazott.jsp" />
beagyazott.jsp
<% out.print(name); %>
ANTAL Margit JSP lapok
![Page 30: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/30.jpg)
A param tag
Beagyazo JSP lap:
<jsp:include page="beagyazott.jsp"><jsp:param name="username" value="jojo"/>
</jsp:include>
Beagyazott JSP lap:
A felhasznalo neve:<%= request.getParameter("username") %>
ANTAL Margit JSP lapok
![Page 31: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/31.jpg)
Az forward tag
<jsp:forward page={"pageURL" | "<%= expression %>"} ><jsp:param
name="parameterName"value="{parameterValue | <%= expression %>}"
/></jsp:forward>
<jsp:forward page="masik.jsp"><jsp:param name="username" value="jojo" />
</jsp:forward>
ANTAL Margit JSP lapok
![Page 32: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/32.jpg)
Expression Language
Mikor hasznaljuk?
akcioelemben valamely attributum megadasakor:
<jsp:include page=’${URL_to_page}’/>
HTML szovegben:
<H2>Hello, ${param.name}</H2>
ANTAL Margit JSP lapok
![Page 33: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/33.jpg)
EL implicit objektumok
pageContext
pageScope (String - Object)
requestScope(String - Object)
sessionScope(String - Object)
applicationScope(String - Object)
param(String - String)
paramValues(String - String[])
header(String - String)
headerValues(String - String[])
cookie(String - String)
ANTAL Margit JSP lapok
![Page 34: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/34.jpg)
EL es a Java tarolok
Java tarolok
tomb, Vector, List, Set, Map
<%String[] allatok={"kutya", "macska", "elefant"};request.setAttribute("allatok", allatok);
%>
<p>Elso: ${allatok[0]}</p><p>Elso: ${requestScope.allatok[0]}</p>
<p>Masodik: ${allatok[’1’]}</p><p>Masodik: ${requestScope.allatok[’1’]}</p>
<p>Harmadik: ${allatok["2"]}</p><p>Harmadik: ${requestScope.allatok["2"]}</p>
ANTAL Margit JSP lapok
![Page 35: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/35.jpg)
EL es a keres parameterei
Keres
index.jsp?productid=12&productid=23
${paramValues.productid[0]}${paramValues.productid[1]}
${paramValues[’productid’][0]}${paramValues[’productid’][1]}
ANTAL Margit JSP lapok
![Page 36: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/36.jpg)
Babok a elerese
<jsp:useBean id="person" class="model.Person"/><jsp:setProperty name="person"
property="firstName" value="Margit"/><jsp:setProperty name="person"
property="lastName" value="Antal"/>
<p>First name: ${person.firstName} </p><p>Last name: ${person.lastName} </p>
${person[firstName]}${person[’firstName’]}${person["firstName"]}
ANTAL Margit JSP lapok
![Page 37: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/37.jpg)
EL operatorok
Aritmetikai operatorok
Operator neve Operator
osszeadas +kivonas -szorzas *osztas /osztasi hanyados %
ANTAL Margit JSP lapok
![Page 38: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/38.jpg)
EL operatorok
Relacios es egyenlosegi operatorok
Operator neve Operator
egyenlo == es eqkulonbozo != es nekisebb < es ltnagyobb > es gtkisebb vagy egyenlo <= es lenagyobb vagy egyenlo >= es ge
ANTAL Margit JSP lapok
![Page 39: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/39.jpg)
EL operatorok
Relacios es egyenlosegi operatorok
Operator neve Operator
es && es andvagy || es ornem ! es not
ANTAL Margit JSP lapok
![Page 40: JSP lapok - ms.sapientia.ro](https://reader030.vdocuments.us/reader030/viewer/2022012613/6198bb34e7ccc63d2c69bb4e/html5/thumbnails/40.jpg)
JSP kornyezet konfiguralasa
<jsp-config><jsp-property-group>
<url-pattern>*.jsp</url-pattern><el-ignored>true</el-ignored>
</jsp-property-group>
<jsp-property-group><url-pattern>/scriptless/*</url-pattern><scripting-invalid>true</scripting-invalid>
</jsp-property-group></jsp-config>
ANTAL Margit JSP lapok