CGI, serwlety Java i szablony JSP. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji

Wielkość: px
Rozpocząć pokaz od strony:

Download "CGI, serwlety Java i szablony JSP. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji"

Transkrypt

1 Aplikacje WWW 1 Plan wykładu 2 CGI, serwlety Java i szablony JSP dr inŝ. Mikołaj Morzy Instytut Informatyki Politechniki Poznańskiej Mikolaj.Morzy@put.poznan.pl Metody konstrukcji logiki prezentacji Programy CGI Serwlety Java implementacja korzystanie z nagłówków HTTP obsługa zmiennych Cookies obsługa sesji HTTPSession Szablony JSP cykl Ŝycia deklaracje dyrektywy skryptlety język EL Logika prezentacji I Implementacja logiki prezentacji 3 Przykład: serwlety vs. szablony 4 Zadania logiki prezentacji Technologie serwletów programy CGI serwlety Java Technologie szablonów JavaServer Pages PHP ASP.NET <% String imie = request.getparameter("imie"); %> <HTML> serwlet <BODY> import javax.servlet.http.*; <H2>Witaj <%=imie%></h2> import java.io.*; </BODY> szablon </HML> public class MyServlet1 extends HttpServlet { public void doget(httpservletrequest request, HttpServletResponse response) throws IOException { String imie = request.getparameter("imie"); response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html><body>"); out.println("<h2>witaj "+imie+"</h2>"); out.println("</body></html>"); }}

2 Architektura CGI 5 Cechy programów CGI 6 Przeglądarka klient HTTP HTTP serwer HTTP program CGI logika biznesowa Dowolny język programowania Proces uruchamiany przez serwer HTTP w odpowiedzi na Ŝądanie klienta HTTP Parametry wejściowe zmienne środowiskowe wejście standardowe Dokument wynikowy wyjście standardowe Wydajność, bezpieczeństwo Wybrane zmienne środowiskowe CGI 7 Zmienne środowiskowe CGI - przykład 8 SERVER_SOFTWARE SERVER_NAME REQUEST_METHOD QUERY_STRING REMOTE_HOST REMOTE_ADDR HTTP_USER_AGENT off echo Content-Type: text/html echo. echo SERVER_SOFTWARE: %SERVER_SOFTWARE% ^<BR^> echo SERVER_NAME: %SERVER_NAME% ^<BR^> echo REQUEST_METHOD: %REQUEST_METHOD% ^<BR^> echo QUERY_STRING: %QUERY_STRING% ^<BR^> echo REMOTE_HOST: %REMOTE_HOST% ^<BR^> echo REMOTE_ADDR: %REMOTE_ADDR% ^<BR^> echo HTTP_USER_AGENT: %HTTP_USER_AGENT% ^<BR^>

3 Przykładowy program CGI (1) 9 Przykładowy program CGI (2) 10 off echo Content-type: text/html echo. echo ^<HTML^>^<BODY^> echo ^<H2^> echo Witaj echo %QUERY_STRING%! echo Oto lista moich plików: echo ^<PRE^> dir /b c:\pliki... HTTP/ OK Date: Sat, 24 Jun Server: Apache/1.0.0 Content-Type: text/html Content-Length: 152 <HTML><BODY> <H2>Witaj Maciej! Oto lista moich plików: <PRE> demo.exe foto1.jpg... off echo HTTP/ OK echo Content-type: text/html echo Expires: Thu, 25 Jun :00:00 GMT echo. echo ^<HTML^>^<BODY^> echo ^<H2^> echo Witaj %QUERY_STRING%!... HTTP/ OK Content-type: text/html Expires: Thu, 25 Jun :00:00 GMT Content-Length: 152 <HTML><BODY> <H2> Witaj Marek!... Parametry Ŝądania HTTP 11 Architektura serwletów Java 12 Rozkaz GET zmienna QUERY_STRING Rozkaz POST standardowe wejście Konieczność programowego wyodrębniania parametrów z łańcucha znakowego Przeglądarka HTTP serwer HTTP serwer aplikacji Java EE serwlet Java logika biznesowa wylot=pozna%f1&przylot=new+york&godzina=11%3a00 klient HTTP wylot="poznań", przylot="new York", godzina="11:00"

4 Struktura serwletu Java 13 Przykładowy serwlet Java 14 Klasa dziedzicząca z HttpServlet Implementacja co najmniej jednej z metod: doget() dopost() init() destroy() import javax.servlet.http.*; import java.io.*; public class MyServlet1 extends HttpServlet { public void doget(httpservletrequest request, 1 HttpServletResponse response) throws IOException { }} String imie = request.getparameter("imie"); response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html><body>"); out.println("<h2>witaj "+imie+"</h2>"); out.println("</body></html>"); Cykl Ŝycia serwletu Java 15 Interfejs HttpServletRequest 16 Przeglądarka klient HTTP 1 serwer aplikacji Java EE 4 doget() init() 2 destroy() 3 n Cookie[] getcookies() String getheader(n) String getmethod() String getremoteuser() HttpSession getsession() String getparameter(n) String getremoteaddr() Ŝądanie HTTP MyServlet1 doget() init() destroy() request

5 HttpServletRequest a zmienne CGI 17 HttpServletRequest - przykład 18 SERVER_NAME REQUEST_METHOD QUERY_STRING REMOTE_HOST REMOTE_ADDR REMOTE_USER String getservername() String getmethod() String getquerystring() String getremotehost() String getremoteaddr() String getremoteuser() response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html><body>"); out.println("server_name="+request.getservername()+"<br>"); out.println("request_method="+request.getmethod()+"<br>"); out.println("query_string="+request.getquerystring()+"<br>"); out.println("remote_host="+request.getremotehost()+"<br>"); out.println("remote_addr="+request.getremoteaddr()); out.println("</body></html>"); Odczyt parametrów Ŝądania HTTP 19 Serwlety Java - metoda dopost() 20 request.getparameter() request.getparameternames() request.getparametervalues() Metoda doget() odpowiada na Ŝądania typu GET Metoda dopost() odpowiada na Ŝądania typu POST Jednakowy dostęp do parametrów Ŝądania Identyczne lub róŝne implementacja float x = Float.parseFloat(request.getParameter("x")); float y = Float.parseFloat(request.getParameter("y")); float result = x * y; response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<html><body>"); out.println(x + " x " + y + " = " + result); out.println("</body></html>"); public class MyServlet extends HttpServlet { public void doget(httpservletrequest request, HttpServletResponse response) throws IOException {...} public void dopost(httpservletrequest request, HttpServletResponse response) throws IOException {...}}

6 Interfejs HttpServletResponse 21 Metoda senderror() - kody zwrotne 22 void addcookie(c) void addheader(n,v) void senderror(v) void sendredirect(url) void setheader(n,v) PrintWriter getwriter() ServletOutputStream getoutputstream() void flushbuffer() response odpowiedź HTTP SC_BAD_REQUEST SC_UNAUTHORIZED SC_FORBIDDEN SC_NOT_FOUND SC_GONE (400) Niewłaściwy format Ŝądania (401) Wymagana autoryzacja klienta (403) Odmowa dostępu (404) Dokument nie znaleziony (410) Dokument zmienił adres, a nowa lokalizacja nie jest znana SC_SERVICE_UNAVAILABLE (503) System jest chwilowo przeciąŝony lub niedostępny SC_NOT_MODIFIED (304) Dokument nie uległ modyfikacji od poprzedniego dostępu Metoda senderror() - przykład 23 Obsługa zmiennych Cookies 24 if (!request.getremoteaddr().equals(" ")) response.senderror(httpservletresponse.sc_forbidden); else out.println("<h1>welcome!</h1>"); Zmienne Cookies reprezentowane w postaci obiektów klasy Cookie Wysyłanie zmiennych Cookies: response.addcookie() Odczyt zmiennych Cookies: request.getcookies()

7 Klasa Cookie 25 Wysyłanie zmiennych Cookies 26 Cookie(n,s) String getdomain() void setdomain(s) String getmaxage() void setmaxage(v) String getname() void setname(s) String getpath() void setpath(s) String getvalue() void setvalue(s) Tworzy zmienną o nazwie n i wartości s Odczytuje/ustawia adres domenowy, dla którego przeznaczona jest zmienna Odczytuje/ustawia czas Ŝycia zmiennej, liczony w sekundach (-1 -> ulotne) Odczytuje/ustawia nazwę zmiennej Odczytuje/ustawia prefiks ścieŝki URL na serwerze, dla której przeznaczona jest zmienna Odczytuje/ustawia wartość zmiennej 1 Cookie c1 = new Cookie("Imie","Maciej"); 2 Cookie c2 = new Cookie("Miasto","Poznań"); 3 c1.setmaxage(24*60*60); 4 response.addcookie(c1); 5 response.addcookie(c2); nagłówek odpowiedzi HTTP HTTP/ OK Set-Cookie: Imie=Maciej; Expires=Mon, 03-Jul :48:36 GMT Set-Cookie: Miasto=Poznań... Odczytywanie zmiennych Cookies 27 Sesje HTTPSession out.println("<h1>odebrane Cookies</h1>"); Cookie[] allcookies = request.getcookies(); for (int i=0; i<allcookies.length; i++) out.println(allcookies[i].getname()+": "+ allcookies[i].getvalue()+"<br>"); 3 Problem: protokół HTTP jest bezstanowy Emulacja sesji KaŜda sesja otrzymuje identyfikator Stan sesji przechowywany przez serwer aplikacji Stan sesji usuwany po wygaśnięciu czasu waŝności nagłówek Ŝądania HTTP GET /MyServlets/MyServlet2 HTTP/1.0 Cookie: Imie=Maciej; Miasto=Poznań...

8 Architektura HTTPSession 29 Interfejs HTTPSession 30 ID=324 klient HTTP ID=567 klient HTTP Ŝądanie HTTP serwlet Java serwer aplikacji HTTPSession tablica sesjii ID CZAS_DOSTĘPU STAN :45 x: y: :20 x: Object getattribute(n) void setattribute(n,o) long getcreationtime() String getid() long getlastaccessedtime() void invalidate() Zapamiętuje na czas sesji obiekt pod podaną nazwą / odczytuje obiekt o podanej etykiecie Odczytuje czas rozpoczęcia sesji, liczony w ms od Odczytuje jednoznaczny identyfikator sesji Odczytuje czas ostatniej operacji wykonanej w ramach sesji ( ) Zamyka sesję i usuwa wszystkie jej obiekty Wykorzystywanie HTTPSession 31 HTTPSession czy Cookies? Pracownik p = new Pracownik(); p.imie = "Maciej"; p.miasto = "Poznań"; HttpSession sess = request.getsession(true); sess.setattribute("prac1", p); Oba mechanizmy pozwalają przechowywać stan sesji Cookies wymaga przesyłania obiektów stanu w nagłówkach HTTP HTTPSession obsługuje dowolne typy obiektów stanu Bezpieczeństwo 4 5 HttpSession sess = request.getsession(false); Pracownik e = (Pracownik) sess.getattribute("prac1"); out.println(e.imie + " " + e.miasto);

9 JSP - wprowadzenie 33 Przykład prostej strony 34 Technologia umoŝliwiająca łącznie statycznego kodu HTML lub XML z dynamicznym kodem Java Rozszerzenie technologii serwletów Podstawowe narzędzie tworzenia warstwy prezentacji w architekturze Java EE Historia wersja JSP 1.2 i Servlet 2.3 częścią J2EE 1.3 (1999) wersja JSP 2.0 i Servlet 2.4 częścią J2EE 1.4 wersja JSP 2.1 i Servlet 2.5 częścią Java EE 5 Platform <%@ page language="java" %> <html> <head> <title>eurokonwerter v.0.1</title> </head> <body> <jsp:include page="header.jsp"/> <%! double priceeur = 10, pricepln = 0; %> <%! Double ratiopln2eur = 4.75; %> <% pricepln = priceeur * ratiopln2eur; %> <p> Kwocie <%= priceeur %> euro odpowiada <%= pricepln %> zlotych </body> </html> dyrektywa akcja deklaracja skryptlet statyczne dane wyraŝenie Schemat działania JSP Cykl Ŝycia JSP jspinit() załadowanie zasobów Ŝądanie odpowiedź _jspservice() przetwarzanie Ŝądań jspdestroy() zwolnienie zasobów

10 Dyrektywy 37 Deklaracje 38 Kontrolują sposób translacji JSP do serwletu include %>: włączenie zewnętrznego pliku file page %>: ustawienia strony import, contenttype, errorpage, iserrorpage, info, buffer, session, autoflush, extends, isthreadsafe, iselenabled taglib %>: wskazanie na bibliotekę znaczników prefix, uri Pozwalają na deklarowanie metod i składowych serwletu wynikowego Mogą zawierać inicjalizację Wprowadzane przez znaczniki <%! %> <%! int licznik = 0; %> <%! int a, b, c; %> <%! Array mojatablica = new Array(); %> <%! int ktoragodzina() { Calendar cal = new GregorianCalendar(); return cal.get(calendar.hour_of_day); } %> Skryptlety 39 Skryptlety i HTML 40 Znaczniki XML umoŝliwiające osadzanie kodu Java Mogą generować kod HTML lub XML za pomocą predefiniowanego obiektu out Wprowadzane przez znaczniki <% %> Instrukcje warunkowe: uwaga na nawiasy! <html> <body> <% Calendar today = new GregorianCalendar(); int now = today.get(calendar.hour_of_day); <% Calendar dzis = new GregorianCalendar(); int godzina = dzis.get(calendar.hour_of_day); out.println("<b>jest godzina " + godzina + "</B>"); %> if (now <= 15) { %> <b> jest jeszcze przed piętnastą </b> <% } else { %> <b> jest juŝ po piętnastej </b> <% } %> </body> </html>

11 WyraŜenia 41 Znaczniki JSP (akcje) 42 Znaczniki XML umoŝliwiające wartościowanie wyraŝenia Wartość konwertowana do łańcucha znaków i włączana do wynikowego kodu HTML lub XML Wprowadzane przez znaczniki <%= %> Znaczniki XML wywołujące akcje serwera aplikacji Dostępne akcje <jsp:include>: włączenie zewnętrznego kodu <jsp:forward>: przekazanie sterowania <jsp:param>: zdefiniowanie parametru <jsp:plugin>: obsługa apletów Java <jsp:fallback>: gdy klient nie obsługuje apletów <%! Calendar today = new GregorianCalendar(); %> <P>Dzisiejsza data to <%= today.get(calendar.day_of_month) %>, <%= today.get(calendar.month) %>, roku <%= today.get(calendar.year) %> </P> i znaczniki do obsługi komponentów JavaBean Obiekty predefiniowane 43 Obsługa wyjątków 44 Bogaty zestaw predefiniowanych obiektów config: dostęp do parametrów inicjalizacyjnych request: Ŝądanie otrzymane od klienta HTTP Strona obsługująca wyjątki wskazywana przez dyrektywę <%@ page errorpage="errorhandler.jsp" %> response: odpowiedź wysłana klientowi HTTP session: sesja HTTP application: kontekst aplikacji pagecontext: kontekst strony wraz ze zmiennymi out: strumień stanowiący odpowiedź dla klienta HTTP page: serwlet wynikowy dla dokumentu JSP musi zawierać dyrektywę <%@ page iserrorpage="true" %> najczęściej importuje zawartość pakietu java.io <%@ page import="java.io.*" %> Dostęp do wyjątku przez obiekt exception Specjalny wyjątek JspException

12 Wywołanie strony JSP z serwletu 45 Wywołanie strony JSP z serwletu - przykład 46 Wywołanie strony JSP z serwletu pobranie kontekstu serwletu pobranie zarządcy Ŝądań przekierowanie przez include() lub forward() Przekazanie danych z serwletu do strony JSP umieszczenie parametrów w adresie URL wykorzystanie obiektu request simpleservlet.java ServletContext ctx = this.getservletcontext(); RequestDispatcher dispatcher = ctx.getrequestdispatcher("/simplepage.jsp"); request.setattribute("name","james Bond"); dispatcher.forward(request,response); simplepage.jsp <%@page contenttype="text/html"%> <html> <body> <h1>jsp Page</h1> Hello <%= request.getattribute("name") %>! </body> </html> Język wyraŝeń EL - wprowadzenie 47 JSP EL - wyraŝenia 48 Niewygodna składnia wyraŝeń JSP <tag attribute="<%= request.getattribute("name") %>"> Język wyraŝeń (JSP Expression Language, JSP EL) wprowadzony w JSP 2.0 uproszczenie kodu: <tag attribute="${name}"> opcjonalność: <%@ page iselignored="true" %> dodatkowe obiekty predefiniowane zmienne: tablice, mapy, listy, własności ewaluacja wyraŝeń, warunków logicznych WyraŜenia JSP EL mogą się znaleźć: w statycznym tekście w atrybucie znacznika standardowego lub znacznika zdefiniowanego przez uŝytkownika WyraŜenia w notacji ${zmienna.pole} Automatyczna konwersja typu wynikowego wyraŝenia do oczekiwanego typu

13 JSP EL obiekty predefiniowane 49 JSP EL literały i operatory 50 Dodatkowe obiekty predefiniowane: pagecontext: pełen kontekst strony JSP param: wartość parametru paramvalues: tablica wartości parametru header: wartość nagłówka HTTP headervalues: tablica wartości nagłówka HTTP cookie: wartość ciasteczka initparam: wartość parametru inicjalizacyjnego pagescope, requestscope, sessionscope, applicationscope Literały logiczne: true i false liczby całkowite i zmiennoprzecinkowe łańcuchy znaków Operatory arytmetyczne: + - * / % mod div logiczne: and or not &&! porównania: ==!= => > <= < lt gt le ge eq ne empty, warunkowy A? B : C JSP EL - przykład simpleservlet.java ServletContext ctx = this.getservletcontext(); RequestDispatcher dispatcher = ctx.getrequestdispatcher("/simplepage.jsp?code=007"); request.setattribute("name","james Bond"); dispatcher.forward(request,response); simplepage.jsp <%@page contenttype="text/html"%> <html> <body> Hello ${name}! Your browser is ${header["user-agent"]}. Your secret code is ${param.code}. </body> </html> 51 Podsumowanie Dwa podejścia do konstrukcji logiki prezentacji Przykładowe technologie serwletów Zagadnienia implementacji serwletów Java Serwlety Java wymagają specjalizowanego serwera aplikacji 52

14 Materiały dodatkowe 53 "The Common Gateway Interface", "FastCGI Home", "Java EE At a Glance", "Java EE 5 SDK",

CGI i serwlety. Plan wykładu. Wykład prowadzi Mikołaj Morzy. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji

CGI i serwlety. Plan wykładu. Wykład prowadzi Mikołaj Morzy. Przykład: serwlety vs. szablony. Implementacja logiki prezentacji Wykład prowadzi Mikołaj Morzy CGI i serwlety Plan wykładu Metody konstrukcji logiki prezentacji Programy CGI Serwlety Java implementacja korzystanie z nagłówków obsługa zmiennych Cookies obsługa sesji

Bardziej szczegółowo

Aplikacje WWW. Wykład 5. Logika prezentacji - część I. wykład prowadzi: Maciej Zakrzewicz. Logika prezentacji I

Aplikacje WWW. Wykład 5. Logika prezentacji - część I. wykład prowadzi: Maciej Zakrzewicz. Logika prezentacji I Wykład 5 Logika prezentacji - część I wykład prowadzi: Maciej Zakrzewicz Logika prezentacji I 1 Plan wykładu Metody konstrukcji logiki prezentacji Programy CGI Serwlety Java implementacja korzystanie z

Bardziej szczegółowo

mgr inż. Michał Paluch

mgr inż. Michał Paluch Komunikacja w Internecie Użytkownik klika w odpowiednie łącze. Przeglądarka formatuje żądanie i wysyła Serwer odnajduje zasób, formatuje odpowiedź i przesyła do przeglądarki. Protokół HTTP Zadania klienta

Bardziej szczegółowo

Serwlety i JSP na platformie Java EE. Damian Makarow

Serwlety i JSP na platformie Java EE. Damian Makarow Serwlety i JSP na platformie Java EE Damian Makarow Przebieg prezentacji Serwlety JSP Serwlety a aplikacje Java EE Sesje Ciasteczka Cykl życia Znaczniki Scope JSTL Serwlety+JSP Serwlety i JSP na platformie

Bardziej szczegółowo

pawel.rajba@gmail.com, http://kursy24.eu/

pawel.rajba@gmail.com, http://kursy24.eu/ pawel.rajba@gmail.com, http://kursy24.eu/ Servlets Charakterystyka Główne metody Obiekty request i response JSP Dyrektywy Elementy skryptowe Elementy akcji Generowanie treści Obiekty niejawne Obiekty request

Bardziej szczegółowo

Logika prezentacji III

Logika prezentacji III Logika prezentacji III wykład prowadzi Mikołaj Morzy Logika prezentacji 1 Plan wykładu Szablony JSP cykl życia deklaracje dyrektywy skryptlety język EL Inne technologie szablonów Velocity WebMacro FreeMarker

Bardziej szczegółowo

1 Wprowadzenie do J2EE

1 Wprowadzenie do J2EE Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2

Bardziej szczegółowo

Piotr Laskowski Krzysztof Stefański. Java Servlets

Piotr Laskowski Krzysztof Stefański. Java Servlets Piotr Laskowski Krzysztof Stefański Java Servlets Java Servlets Technologia dynamicznego generowania treści dla aplikacji WWW Wyspecyfikowana przez Sun, obecnie przez Java Community Process Pierwsza formalna

Bardziej szczegółowo

Java wybrane technologie spotkanie nr 5. Java Server Pages

Java wybrane technologie spotkanie nr 5. Java Server Pages Java wybrane technologie spotkanie nr 5 Java Server Pages 1 Składnia dowolny HTML (template) 2

Bardziej szczegółowo

Programowanie w Sieci Internet JSP ciąg dalszy. Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet JSP ciąg dalszy. Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet JSP ciąg dalszy Kraków, 9 stycznia 2015 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić JSP tags, Używanie tagów, Custom tags, JSP objests, Obiekty

Bardziej szczegółowo

Serwery aplikacji. dr Radosław Matusik. radmat

Serwery aplikacji. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat Ćwiczenie 1 Proszę napisać aplikację wykorzystującą serwlety i bazy danych, która umożliwi wyszukiwanie tytułów książek po nazwisku autora oraz autorów po tytule książki. Ćwiczenie

Bardziej szczegółowo

Wykład dla studentów Informatyki Stosowanej UJ 2012/2013

Wykład dla studentów Informatyki Stosowanej UJ 2012/2013 e-biznes Wykład dla studentów Informatyki Stosowanej UJ 2012/2013 Michał Cieśla pok. 440a, email: michal.ciesla@uj.edu.pl konsultacje: środy 10-12 http://users.uj.edu.pl/~ciesla/ 1 Literatura B. Burke,

Bardziej szczegółowo

prepared by: Programowanie WWW Servlety

prepared by: Programowanie WWW Servlety Programowanie WWW Servlety Przypomnienie problemu Aplikacja do liczenia kredytów Klasa Kredyt Formatka do wprowadzania danych (czysty HTML) Skrypt liczący ratę (JSP wykorzystujące klasę Kredyt) Klasa Kredyt

Bardziej szczegółowo

Elementy JEE. 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages.

Elementy JEE. 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages. Elementy JEE 1. Wprowadzenie. 2. Prerekwizyty. 3. Pierwszy servlet. obsługa parametrów żądań 4. JavaServer Pages. 1 Java Enterprice Edition Java Enterprice Edition (JEE) jest rozszerzeniem Java Standard

Bardziej szczegółowo

Java wybrane technologie spotkanie nr 3. Serwlety

Java wybrane technologie spotkanie nr 3. Serwlety Java wybrane technologie spotkanie nr 3 Serwlety 1 Klient-Serwer Odpowiedzialność serwera przyjmowanie żądań od klienta przygotowywanie odpowiedzi statyczna dynamiczna Rodzaje odpowiedzi statyczna dynamiczna

Bardziej szczegółowo

Wzorce prezentacji internetowych

Wzorce prezentacji internetowych Wzorce prezentacji internetowych 1. Model kontrolera widoku (Model View Controller). 2. Kontroler strony (Page Controller). 3. Kontroler fasady (Front Controller). 4. Szablon widoku (Template View). 5.

Bardziej szczegółowo

Serwlety. Co to jest serwlet? Przykładowy kod serwletu. Po co są serwlety?

Serwlety. Co to jest serwlet? Przykładowy kod serwletu. Po co są serwlety? Serwlety Co to jest serwlet? kawałek kodu w Javie po stronie serwera HTTP rozszerza moŝliwośći serwera CGI, w Javie, wzbogacone o biblioteki ułatwiające Ŝycie programiście (np. utrzymywanie sesji, wpólne

Bardziej szczegółowo

Kurs WWW 1. Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/

Kurs WWW 1. Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Kurs WWW 1 Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ 1 Na podstawie: Hougland, D. i Tavistock A., JSP. Tworzenie stron WWW, RM, Warszawa 2002 Wprowadzenie Technologia po stronie serwera

Bardziej szczegółowo

Wprowadzenie do JSP. Marcin Apostoluk, Tadeusz Pawlus, Wojciech Walczak. Technologie Biznesu Elektronicznego, 7 marzec 2006

Wprowadzenie do JSP. Marcin Apostoluk, Tadeusz Pawlus, Wojciech Walczak. Technologie Biznesu Elektronicznego, 7 marzec 2006 Marcin Apostoluk Tadeusz Pawlus Wojciech Walczak Technologie Biznesu Elektronicznego, 7 marzec 2006 Plan prezentacji 1 2 3 4 5 6 7 Kto się tym zajmuje? Opis serwletu Przykład Serwlety inne niż HTTP Aplikacje

Bardziej szczegółowo

Architektury Usług Internetowych. Laboratorium 1. Servlety

Architektury Usług Internetowych. Laboratorium 1. Servlety Architektury Usług Internetowych Laboratorium 1. Servlety Wstęp Celem laboratorium jest zapoznanie się z modelem klient-serwer (żądanie-odpowiedź) na przykładzie serwletów. Kontener webowy Kontener webowy

Bardziej szczegółowo

Serwery aplikacji. dr Radosław Matusik. radmat

Serwery aplikacji. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat EL - Expression Language Załóżmy, że mamy klasę Pracownik, której atrybutem jest PESEL. Załóżmy dalej, że w atrybucie sesji zalogowany przechowujemy obiekt aktualnie zalogowanego

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej JSP - Java Server Pages dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2019 Aplikacje i skrypty WWW klasyfikacja

Bardziej szczegółowo

Programowanie w języku Java

Programowanie w języku Java Programowanie w języku Java Wykład 6: Programowanie rozproszone: Servlety, JSP JEE warstwa WWW Programowanie w języku Java 2 1 Interakcje serwer-klient Programowanie w języku Java 3 Technologie warstwy

Bardziej szczegółowo

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Serwer aplikacji Serwer aplikacji to: Serwer wchodzący w skład sieci komputerowej, przeznaczony

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1).

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).

Bardziej szczegółowo

Serwlety i JSP. Autor: Marek Zawadka deekay@gazeta.pl

Serwlety i JSP. Autor: Marek Zawadka deekay@gazeta.pl Serwlety i JSP Autor: Marek Zawadka deekay@gazeta.pl Plan prezentacji Wstęp CGI i inne wcześniejsze rozwiązania Serwlety ulepszenia klasa HTTPServlet obsługa sesji wielowątkowość JSP czym się różni od

Bardziej szczegółowo

Java Enterprise Edition spotkanie nr 3. Serwlety c.d.

Java Enterprise Edition spotkanie nr 3. Serwlety c.d. Java Enterprise Edition spotkanie nr 3 Serwlety c.d. 1 Wzorzec obserwator ServletRequestAttributeListener void attributeadded(servletrequestattributeevent ev) void attributeremoved(servletrequestattributeevent

Bardziej szczegółowo

Aplikacje internetowe i rozproszone - laboratorium

Aplikacje internetowe i rozproszone - laboratorium Aplikacje internetowe i rozproszone - laboratorium Enterprise JavaBeans (EJB) Celem tego zestawu ćwiczeń jest zapoznanie z technologią EJB w wersji 3.0, a w szczególności: implementacja komponentów sesyjnych,

Bardziej szczegółowo

JavaServer Pages. Konrad Kurdej Karol Strzelecki

JavaServer Pages. Konrad Kurdej Karol Strzelecki JavaServer Pages Konrad Kurdej Karol Strzelecki Podejścia do projektowania web aplikacji za pomocą Javy Serwlety Java Serwlety Java to technologia wchodząca w skład Java EE (dawniej J2EE). Serwlet Java

Bardziej szczegółowo

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 09

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 09 Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 09 T. Romańczukiewicz Jagiellonian University 2009/2010 Plan Plan 1 Serwlety Plan Serwlety Przypomnienie Serwlety - wstęp Wstęp Możliwości

Bardziej szczegółowo

Wprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/

Wprowadzenie do J2EE. Maciej Zakrzewicz. Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ 1 Wprowadzenie do J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji

Bardziej szczegółowo

Java wybrane technologie spotkanie nr 4. Serwlety c.d.

Java wybrane technologie spotkanie nr 4. Serwlety c.d. Java wybrane technologie spotkanie nr 4 Serwlety c.d. 1 Wprowadzenie Narzucona struktura katalogów aplikacji (większa przenośności) webapps -app1 -app2 -app3 (root) -*.html, *.gif, *.js, *.css (być może

Bardziej szczegółowo

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.

Serwery aplikacji. mgr Radosław Matusik. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz. Wydział Matematyki i Informatyki Uniwersytetu Łódzkiego www.math.uni.lodz.pl/ radmat radmat@math.uni.lodz.pl Serwer aplikacji Serwer aplikacji to: Serwer wchodzący w skład sieci komputerowej, przeznaczony

Bardziej szczegółowo

In»ynieria systemów informacyjnych - Adam Krechowicz

In»ynieria systemów informacyjnych - Adam Krechowicz In»ynieria systemów informacyjnych - Adam Krechowicz 1 Serwlety Klasa j zyka Java pozwalaj ca na obsªugiwanie» da«od klientów. 1.1 Serwlet HTTP Klasa pozwala na dynamiczne tworzenie stron internetowych

Bardziej szczegółowo

Architektury Usług Internetowych. Laboratorium 1 Servlety

Architektury Usług Internetowych. Laboratorium 1 Servlety Architektury Usług Internetowych Laboratorium 1 Servlety Wstęp Celem laboratorium jest zapoznanie się z modelem klient-serwer (żądanieodpowiedź) na przykładzie serwletów. Kontener webowy Kontener webowy

Bardziej szczegółowo

Serwlety Java: zagadnienia zaawansowane. Data Sources. Data Sources. Przykład pliku data-sources.xml

Serwlety Java: zagadnienia zaawansowane. Data Sources. Data Sources. Przykład pliku data-sources.xml Serwlety Java: zagadnienia zaawansowane Data Sources Data Sources Przykład pliku data-sources.xml Obiekt Data Source stanowi logiczną definicję bazy danych programista korzysta z obiektu Data Source serwer

Bardziej szczegółowo

Aplikacje Internetowe, Servlety, JSP i JDBC

Aplikacje Internetowe, Servlety, JSP i JDBC Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny

Bardziej szczegółowo

Aplikacje WWW Wprowadzenie

Aplikacje WWW Wprowadzenie Aplikacje WWW Wprowadzenie Beata Pańczyk na podstawie http://www.e-informatyka.edu.pl/ http://wazniak.mimuw.edu.pl/index.php?title=aplikacje_www Plan wykładu Składniki architektury WWW: klient HTTP, serwer

Bardziej szczegółowo

Aktywne i dynamiczne strony WWW. Elementy projektowania stron WWW. Część 3. Formularze HTML przykład. Formularze HTML. dr inŝ.

Aktywne i dynamiczne strony WWW. Elementy projektowania stron WWW. Część 3. Formularze HTML przykład. Formularze HTML. dr inŝ. Aktywne i dynamiczne strony WWW Elementy projektowania stron WWW Część 3 dr inŝ. Tomasz Traczyk Formularze HTML Aktywne strony WWW Dynamiczne strony WWW 2 Formularze HTML Formularze HTML przykład Do czego

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,

Bardziej szczegółowo

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF O mnie 12 lat doświadczenia w systemach WEB Java/JEE (ISC) 2 CISSP CTO w J-LABS GET / HTTP/1.1 Host: bank.pl User-Agent: Mozilla/5.0

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych

Bardziej szczegółowo

b) Jako nazwę projektu wpisz SerwletyJSPJSTL. Nie zmieniaj wartości pozostałych opcji. Kliknij przycisk Next >.

b) Jako nazwę projektu wpisz SerwletyJSPJSTL. Nie zmieniaj wartości pozostałych opcji. Kliknij przycisk Next >. Serwlety, JSP, JSTL Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne NetBeans 7 (zrzuty ekranów pochodzą z wersji 7.0.1). Celem ćwiczenia jest wprowadzenie do podstawowych

Bardziej szczegółowo

Serwery aplikacji. dr Radosław Matusik. radmat

Serwery aplikacji. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat Ciasteczka trwałe i sesyjne Ciasteczka trwałe - pozostają na komputerze użytkownika po zamknięciu strony, z której zostały pobrane / przeglądarki. Ciasteczka sesyjne - są związane

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje

Bardziej szczegółowo

Komunikacja między serwletami

Komunikacja między serwletami Poznań Java Users Group Komunikacja między serwletami Bartosz Walter Instytut Informatyki Politechniki Poznańskiej Sceny z życia serwletów Obsługa żądań Żądanie Kontener GET / index.html HTTP/1.0 Serwlet

Bardziej szczegółowo

Przegląd technologii JSP

Przegląd technologii JSP Marcin Paszkowski Czego potrzebujemy? Przegląd technologii JSP Do obsługi serwletów oraz JSP używamy kontenera. Czym on jest? Zapewnia on prosty mechanizm komunikacji pomiędzy serwletami a serwerem www.

Bardziej szczegółowo

Java EE: Serwlety i filtry serwletów

Java EE: Serwlety i filtry serwletów Java EE: Serwlety i filtry serwletów Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne NetBeans 6.9 Celem ćwiczenia jest przedstawienie podstawowej technologii platformy Java

Bardziej szczegółowo

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. Protokół HTTP 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. 1 Usługi WWW WWW (World Wide Web) jest najpopularniejszym sposobem udostępniania

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium JavaServer Pages Celem ćwiczenia jest zbudowanie kilku prostych stron internetowych z użyciem technologii JSP. Podczas ćwiczenia wykorzystany zostanie algorytm sortowania bąbelkowego

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

prepared by: pawel@kasprowski.pl Programowanie WWW Model-View-Controller

prepared by: pawel@kasprowski.pl Programowanie WWW Model-View-Controller Programowanie WWW Model-View-Controller Przypomnienie problemu Aplikacja do liczenia kredytów Klasa Kredyt Formatka do wprowadzania danych (czysty HTML) Skrypt liczący ratę (JSP wykorzystujące klasę Kredyt)

Bardziej szczegółowo

Testowanie aplikacji Java Servlets

Testowanie aplikacji Java Servlets Borland Developer Days 2004 2-3 czerwca 2004 Testowanie aplikacji Java Servlets Bartosz Walter mailto: Bartek.Walter@man.poznan.pl Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe?

Bardziej szczegółowo

Programowanie w Sieci Internet filtry oraz web.xml. Kraków, 11 stycznia 2013 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet filtry oraz web.xml. Kraków, 11 stycznia 2013 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet filtry oraz web.xml Kraków, 11 stycznia 2013 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Filtry, wywoływanie filtrów, wywołania łańcuchowe

Bardziej szczegółowo

Zaawansowane aplikacje internetowe

Zaawansowane aplikacje internetowe Zaawansowane aplikacje internetowe AJAX 1 Celem tego laboratorium jest pokazanie moŝliwości technologii AJAX. W ramach ćwiczeń zostanie zbudowana prosta aplikacja, przechwytująca kliknięcia uŝytkownika

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki

Bardziej szczegółowo

Java Database Connectivity

Java Database Connectivity Java Database Connectivity Celem ćwiczenia jest zbudowanie kilku prostych serwletów z użyciem technologii JDBC. Podczas ćwiczenia zbudowane zostaną serwlety ilustrujące podstawowe techniki łączenia się

Bardziej szczegółowo

2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK

2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK Zaawansowane aplikacje internetowe EJB 2 Celem tego laboratorium jest pokazanie, w jaki sposób aplikacje stworzone w różnych technologiach mogą korzystać z funkcjonalności udostępnianej przez komponenty

Bardziej szczegółowo

TIN Techniki Internetowe Lato 2005

TIN Techniki Internetowe Lato 2005 TIN Techniki Internetowe Lato 2005 Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej Plan wykładów 2 Intersieć, ISO/OSI, protokoły sieciowe, IP 3 Protokoły transportowe: UDP, TCP 4 Model

Bardziej szczegółowo

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne) 1 90 min. Aplikacje WWW Harmonogram ń, semestr zimowy -2017 (studia stacjonarne) 6 października Wprowadzenie do aplikacji WWW Rys historyczny Składniki architektury WWW o klient HTTP o serwer HTTP o protokół

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Język PHP Paweł Witkowski Wydział Matematyki, Informatyki i Mechaniki Jesień 2011 P. Witkowski (Wydział Matematyki, Informatyki i Mechaniki) BDiUS w. VIII Jesień 2011 1 /

Bardziej szczegółowo

Java Enterprise Edition spotkanie nr 4. Java Server Pages c.d.

Java Enterprise Edition spotkanie nr 4. Java Server Pages c.d. Java Enterprise Edition spotkanie nr 4 Java Server Pages c.d. 1 Opracował Jacek Sroka Implict variables & objects application javax.servlet.servletcontext np. application.log() lub getrealpath("/web-inf/licznik.txt")

Bardziej szczegółowo

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,

Bardziej szczegółowo

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 3 PHP PHP - cechy PHP (Hypertext Preprocessor) bardzo łatwy do opanowania, prosta składnia, obsługuje wymianę danych z różnymi systemami baz danych pozwala na dynamiczne generowanie

Bardziej szczegółowo

Programowanie komponentowe 5

Programowanie komponentowe 5 Budowa warstwy klienta w architekturze typu klient-serwer zbudowanych z komponentów typu EE - klient desktopowy i internetowy. Zastosowanie komponentów opartych na technologii EJB 3.2. na podstawie https://docs.oracle.com/javaee/7/jeett.pdf

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium JavaServer Pages Celem ćwiczenia jest zbudowanie kilku prostych stron internetowych z uŝyciem technologii JSP. Podczas ćwiczenia wykorzystany zostanie algorytm sortowania bąbelkowego

Bardziej szczegółowo

1) Przygotowanie środowiska pracy.

1) Przygotowanie środowiska pracy. Aplikacje internetowe, laboratorium Autor: Witold Andrzejewski Java Server Pages (JSP). Celem niniejszego dwiczenia jest przedstawienie podstaw tworzenia aplikacji webowych za pomocą technologii JSP. Po

Bardziej szczegółowo

Java Servlet i Java Server Pages

Java Servlet i Java Server Pages IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWOŒCIACH ZAMÓW CENNIK CZYTELNIA SPIS TREŒCI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY

Bardziej szczegółowo

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008 Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF

Bardziej szczegółowo

Programowanie wielowarstwowe i komponentowe JSP, JSF

Programowanie wielowarstwowe i komponentowe JSP, JSF Programowanie wielowarstwowe i komponentowe JSP, JSF JSP Cykl życia strony JSP Strony JSP są przetwarzane jako servlety, więc dziedziczą po nich wiele cech Kiedy następuje odwołanie do strony JSP, jest

Bardziej szczegółowo

JAVA W SUPER EXPRESOWEJ PIGUŁCE

JAVA W SUPER EXPRESOWEJ PIGUŁCE JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie

Bardziej szczegółowo

Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]

Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1] JAVA wprowadzenie do programowania (3/3) [1] Czym jest aplikacja Java Web Start? Aplikacje JAWS są formą pośrednią pomiędzy apletami a aplikacjami Javy. Nie wymagają do pracy przeglądarki WWW, jednak mogą

Bardziej szczegółowo

Programowanie współbieżne i rozproszone

Programowanie współbieżne i rozproszone Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)

Bardziej szczegółowo

2 Przykªad strony JSP. 3 Elementy dokumentu JSP

2 Przykªad strony JSP. 3 Elementy dokumentu JSP 1 JSP Java Server Pages technologia Javy pozwalaj ca na generowanie dynamicznych dokumentów HTML lub XML. Pozwala na umieszczanie kodu j zyka Java w tre±ci dokumentów. Jest elementem opakowuj cym standardowe

Bardziej szczegółowo

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z

Bardziej szczegółowo

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet Blok 2 - PHP Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Podstawy podstaw, czyli małe wprowadzenie do PHP, Podstawy

Bardziej szczegółowo

Budowa prostej aplikacji wielowarstwowej. Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz

Budowa prostej aplikacji wielowarstwowej. Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz Budowa prostej aplikacji wielowarstwowej Laboratorium 1 Programowanie komponentowe Zofia Kruczkiewicz Konfigurowanie edytora programu za pomocą Tools/Options/Editor Konfigurowanie edytora programu za pomocą

Bardziej szczegółowo

Zaawansowane aplikacje internetowe laboratorium

Zaawansowane aplikacje internetowe laboratorium Zaawansowane aplikacje internetowe laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).

Bardziej szczegółowo

Tworzenie i wykorzystanie usług

Tworzenie i wykorzystanie usług Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi

Bardziej szczegółowo

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,

Bardziej szczegółowo

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi 1 Rozdział 1 Wprowadzenie do PHP i MySQL Opis: W tym rozdziale kursanci poznają szczegółową charakterystykę

Bardziej szczegółowo

Należy ściągnąć oprogramowanie Apache na platformę

Należy ściągnąć oprogramowanie Apache na platformę Programowanie Internetowe Język PHP - wprowadzenie 1. Instalacja Oracle+Apache+PHP Instalacja Apache, PHP, Oracle Programy i ich lokalizacja Oracle Database 10g Express Edition10.2 http://www.oracle.com/technology/products/database/

Bardziej szczegółowo

5.14 JSP - Przykład z obiektami sesji... 83 5.15 Podsumowanie... 84 5.16 Słownik... 85 5.17 Zadanie... 86

5.14 JSP - Przykład z obiektami sesji... 83 5.15 Podsumowanie... 84 5.16 Słownik... 85 5.17 Zadanie... 86 Spis treści 1 Wprowadzenie - architektura, protokoły, system WWW... 1 1.1 Wstęp.................................................. 1 1.2 Ważniejsze daty......................................... 2 1.3 Protokoły

Bardziej szczegółowo

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

Projektowanie aplikacji J2EE w architekturze Model-View-Controller

Projektowanie aplikacji J2EE w architekturze Model-View-Controller XI Konferencja PLOUG Kościelisko Październik 2005 Projektowanie aplikacji J2EE w architekturze Model-View-Controller Maciej Zakrzewicz PLOUG, Instytut Informatyki Politechniki Poznańskiej mzakrz@cs.put.poznan.pl

Bardziej szczegółowo

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy

Bardziej szczegółowo

Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1)

Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) MAS dr. Inż. Mariusz Trzaska Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) Zagadnienia o Podstawy o Kontrolowanie sterowania o Klasy o Interfejsy o Obsługa błędów o Pojemniki o System

Bardziej szczegółowo

Rozproszone systemy internetowe. Wprowadzenie. Koncepcja zdalnego wywołania procedury

Rozproszone systemy internetowe. Wprowadzenie. Koncepcja zdalnego wywołania procedury Rozproszone systemy internetowe Wprowadzenie. Koncepcja zdalnego wywołania procedury Zakres tematyczny przedmiotu Aplikacje rozproszone Technologie /standardy internetowe Programowanie obiektowe 2 Co będzie

Bardziej szczegółowo

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa

Bardziej szczegółowo

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu

Bardziej szczegółowo

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć

Bardziej szczegółowo

Dokumentacja interfejsu HTTPD. Platforma BSMS.PL Instrukcja podłączenia po przez http

Dokumentacja interfejsu HTTPD. Platforma BSMS.PL Instrukcja podłączenia po przez http Dokumentacja interfejsu HTTPD Platforma BSMS.PL Instrukcja podłączenia po przez http Dokumentacja interfejsu httpd (strona 2) SPIS TREŚCI 1. Zawartość dokumentu str.3 2. Informacje ogólne 2.1 Zastosowanie

Bardziej szczegółowo

OpenLaszlo. OpenLaszlo

OpenLaszlo. OpenLaszlo OpenLaszlo Spis Treści 1 OpenLaszlo Co to jest? Historia Idea Architektura Jako Flash lub DHTML Jako servlet lub SOLO Jak to działa? Język LZX Struktura programu Skrypty Obiekty i klasy Atrybuty i metody

Bardziej szczegółowo

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016 Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,

Bardziej szczegółowo

Aplikacje RMI Lab4

Aplikacje RMI   Lab4 Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium JavaServer Pages Celem ćwiczenia jest zbudowanie kilku prostych stron internetowych z użyciem technologii JSP. Podczas ćwiczenia wykorzystany zostanie algorytm sortowania bąbelkowego

Bardziej szczegółowo

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,

Bardziej szczegółowo

Czym jest AJAX. AJAX wprowadzenie. Obiekt XMLHttpRequest (XHR) Niezbędne narzędzia. Standardowy XHR. XHR z obsługą baz danych

Czym jest AJAX. AJAX wprowadzenie. Obiekt XMLHttpRequest (XHR) Niezbędne narzędzia. Standardowy XHR. XHR z obsługą baz danych Czym jest AJAX AJAX wprowadzenie Beata Pańczyk na podstawie: 1. Lis Marcin, Ajax, Helion, 2007 2. Hadlock Kris, Ajax dla twórców aplikacji internetowych, Helion, 2007 AJAX (Asynchronous JavaScript and

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.1.

Języki programowania wysokiego poziomu. PHP cz.1. Języki programowania wysokiego poziomu PHP cz.1. Statyczne i dynamiczne strony WWW Statyczne strony WWW Dokumenty HTML umieszczone na serwerze; zmiana zawartości witryny WWW wymaga modyfikacji plików HTML;

Bardziej szczegółowo