Upload
vuqar-suleymanov
View
250
Download
0
Embed Size (px)
DESCRIPTION
Java Servlets and Java Server Pages (JSP) in Azerbaijan language
Citation preview
ServletsServletsServletsServlets
JSPJSPJSPJSP
ServletsServletsJava Servletləri web hissədə çalışma üstünlüyü yaradır.
HTTP client(Browser) və HTTP server arasında bir qat təşkil edir.
Java classının bütün özəllikləri, HTTP request və HTTP response əlavə edilib.
İçərisində həm java kod həm də HTML tag-lar yazmaq olur.
HTML kod PrintWriter.println() içində yazılır.
Servletlərin arxitekturasıServletlərin arxitekturası
Java Server Pages ( JSP) Java Server Pages ( JSP) JSP dinamik web səhifədir
JSP sadə HTML ilə azacıq Java kodun qarışımı sayəsində yazılıb.
Java kod xüsusi tag içərisində yazılır. <% … %>
JSP səhifənin sonluğu (formatı) .jsp olmalıdır.
JSP kompilyasiya zamanı Java Servletə çevrilir.
Servlet / JSP Yaşam Servlet / JSP Yaşam döngüsüdöngüsü
Init
init jsp / servlet çağırılarkən bir dəfə işə düşür.
Service
Bütün requestlərin keçdiyi bir metoddur.
Destroy
jsp / servlet-in yaşam döngüsünün sonunda bir dəfə işə düşür.
JSP Tag-larJSP Tag-lar
<%=dəyər %>
Dəyərləri HTML-də göstərmək üçündür.
<% Java kod %> HTML içərisində Java kod yazmaq üçündür.
<%! … %> səhifə açılarkən statik dəyişənlər yaratmaq üçündür.
Nümunə kodlarNümunə kodlar<html>
<body>
Tarix: <%=new java.util.Date() %>
</body>
</html>
Qeyd:
biz bugünün tarixini HTML-də göstərmək üçün <%= %> bu tag-dan istifadə etdik.
java.util.Date() əvəzinə Date() yaza bilərik ancaq bunun üçün import lazımdır növbəti səhifədə toxunacağıq.
ScriptletlərScriptletlərScriptletlər <% … %> bu tag içində olur.
Scriptletlər HTML içinə yazılan java kodlardır.
Nümunə:
<% if(Math.random()<3){ %>
<p> 3-dən kiçikdir</p>
<% }else{ %>
<p>3-dən böyükdür</p>
<% } %>
DeclarationlarDeclarationlarDeclarationlar üçün <%! … %> tag-ından sitifadə olunur.
Nümunə:<HTML><BODY><%! Date theDate = new java.util.Date(); Date getDate() { System.out.println( "In getDate() method" ); return theDate; }%>indiki vaxt: <%= getDate() %></BODY></HTML>
JSP CommentsJSP Comments
JSP commentlər HTML comentlərdən fərqlənir.
HTML commentlərə client tərəfdə görünür.
<!— Bu HTML comentidir —>
JSP comment kodların dokumentasiyası üçündür.
JSP comment client tərəfdə görünmür.
<%— Bu JSP commentdir —%>
Directive-lərDirective-lər<%@ page … %>
Bu tag-ın müxtəlif atributları vardır. Daha çox errorPage, contentType, pageEncoding atributları istifadə olunur.
<%@page errorPage="error-404.jsp"
contentType="text/html"
pageEncoding=“UTF-8"%>
<%@ include … %>
Bir atributu var “file”. Məqsədi hər hansı jsp və ya html səhifəni səhifə içinə əlavə etməkdir.
<%@include file="index.jsp" %>
<%@ taglib … %>
JSTL tag-ları import etmək üçündür.
JSP Default Object-lərJSP Default Object-lər
request: HttpServletRequest.
response: HttpServletResponse.
session: HttpSession.
out: JspWriter (PrintWriter-in eynisi).
application: tətbiqiniz var olduqca var.
exception: Səhvləri göstərir.
NümunələrNümunələrRequest
request.getParameter(“name”);
request.getRequestURI();
Response
response.sendRedirect(“https://google.az”);
response.setHeader(“Cache-Control”, “no-cache”);
response.setContentType(“text/html”);
JSP Session ObjectJSP Session ObjectSession unique dataları client-in maşınında cookie kimi saxlayır
Session növləri
Session Object
Cookies
Hidden Form Fields
URL Rewriting
NümunəNümunəSessiona dəyər vermək
session.setAttribute(“ad”, “dəyər”);
Sessiondan dəyər götürmək
session.getAttribute(“ad”);
Sessiondan dəyər silmək
session.removeAttribute(“ad”);
JSP Application ObjectJSP Application Object<% Integer hitsCount = (Integer)application.getAttribute(“hitCounter");
if( hitsCount ==null || hitsCount == 0 ){ out.println("Welcome to my
website!"); HitsCount = 1;
}else{
out.println("Welcome back to my website!"); hitsCount += 1;
} application.setAttribute("hitCounter", hitsCount); %> <p>Sayta ümumi girişlərin sayı: <%= hitsCount%></p>
Lazımlı linklərLazımlı linklər
http://www.tutorialspoint.com/jsp/index.htm
http://www.tutorialspoint.com/servlets/index.htm
http://www.roseindia.net/jsp/jsp.htm
–Vüqar Süleymanov
“Suallarınız?”
Təşəkkürlər!!!Təşəkkürlər!!!