Pawel@Kasprowski.pl Programowanie w Internecie. Podstawy użycia JSP. Paweł Kasprowski. vl06z



Podobne dokumenty
Aplikacje Internetowe. przygotował:

Aplikacje Internetowe. Zakres przedmiotu. Plan ramowy. Tworzenie aplikacji internetowych w języku Java w środowisku Eclipse

Tworzenie aplikacji internetowych w języku Java

Podstawy języka Java. przygotował:

Języki skryptowe - PHP. Podstawy PHP. Paweł Kasprowski. pawel@kasprowski.pl. vl07

AXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

prepared by: Programowanie WWW Servlety

Wybrane działy Informatyki Stosowanej

Aplikacje Internetowe. Najprostsza aplikacja. Komponenty Javy. Podstawy języka Java

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

1 Wprowadzenie do J2EE

Aplikacje WWW - laboratorium

prepared by: Programowanie WWW Model-View-Controller

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

1 Atrybuty i metody klasowe

Java Server Faces - wprowadzenie

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Zaawansowane aplikacje internetowe

Zaawansowane aplikacje internetowe

Aplikacje Internetowe, Servlety, JSP i JDBC

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

Java Podstawy. Michał Bereta

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

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

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

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

Architektury Usług Internetowych. Laboratorium 1 Servlety

Programowanie w Javie 2. Płock, 26 luty 2014 r.

Laboratorium 1 Wprowadzenie do PHP

MVC w praktyce tworzymy system artykułów. cz. 2

Anna Fiedorowicz Bazy danych 2

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

Zaawansowane aplikacje internetowe - laboratorium Architektura Spring.

Java jako język programowania

Ćwiczenie 1. Przygotowanie środowiska JAVA

Programowanie obiektowe

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

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

Kurs programowania. Wykład 7. Wojciech Macyna. 25 kwietnia 2017

Szablon główny (plik guestbook.php) będzie miał postać:

Wykład 6 Dziedziczenie cd., pliki

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

<HTML> <BODY> Hello World! </BODY> </HTML> potem zmienić rozszerzenie z ".html" na ".jsp" i załadować go w przeglądarce.

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Podstawowe wykorzystanie Hibernate

Wprowadzenie do laboratorium. Zasady obowiązujące na zajęciach. Wprowadzenie do narzędzi wykorzystywanych podczas laboratorium.

Programowanie obiektowe zastosowanie języka Java SE

Przegląd technologii JSP

Wybrane działy Informatyki Stosowanej

Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej

Języki i metody programowania Java Lab2 podejście obiektowe

Architektury Usług Internetowych. Laboratorium 1. Servlety

Tworzenie i wykorzystanie usług sieciowych

edziennik Ustaw Opis architektury

Java pierwszy program w Eclipse «Grzegorz Góralski strona własna

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

1.Wstęp. 2.Generowanie systemu w EDK

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

Aplikacje RMI

Facelets ViewHandler

Podstawy i języki programowania

Java EE produkcja oprogramowania

Wybrane działy Informatyki Stosowanej

prepared by: Java Server Pages Sesje, cookies, znaczniki

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

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium

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

Badania poziomu bezpieczeństwa portalu dostępowego do infrastruktury projektu PL-Grid

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Udostępnianie klientom zasobów serwera

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Aplikacje WWW - laboratorium

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

Aplikacje Internetowe

Programowanie obiektowe

Michał Bielecki, KNI 'BIOS'

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1

Języki i metody programowania Java. Wykład 2 (część 2)

Programowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw

Java Podstawy JUST JAVA Michał Bereta Intytu Modelowania Komputerowego Wydział Fizyki, Matematyki i Informatyki Stosowanej

Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C

Aplikacje WWW - laboratorium

1. Co można powiedzieć o poniższym kodzie (zakładając, że zaimportowano wszystkie niezbędne klasy)?

Wykład 5 Okna MDI i SDI, dziedziczenie

Systemy Rozproszone Technologia ICE

JAVA W SUPER EXPRESOWEJ PIGUŁCE

Aplikacje webowe z wykorzystaniem Node.js oraz Express

Aplikacje internetowe - laboratorium

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Strumieniowe bazy danych. Piotr i Paweł

Programowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r.

Aplikacje RMI Lab4

Zastosowanie komponentów EJB typu Session

Transkrypt:

Podstawy użycia JSP Paweł Kasprowski

JSP Java Server Pages Tworzenie dokumentów html ze wstawkami w Javie Dokumenty przekształcane są w servlety klasy generujące html

Serwery JSP Przykładowe serwery: Blazix Tomcat Websphere Standardowa funcjonalność serwera WWW Kompilacja JSP

Najprostszy JSP <HTML> <BODY> Hello! The time is now <%= new java.util.date() %> </BODY> </HTML>

Wstawki w kodzie (scriplet'y) <HTML> <BODY> <% System.out.println( "Evaluating date now"); java.util.date date = new java.util.date(); %>... Hello! The time is now <%= date %> </BODY> </HTML>

Scriplet tworzący tekst <HTML> <BODY> <% System.out.println( "Evaluating date now"); java.util.date date = new java.util.date(); %>... Hello! The time is now <% out.write( String.valueOf( date )); %> </BODY> </HTML>

Obiekty dostępne w jsp out out.write(...) request request.getparameter(...) request.getremotehost() response response.sendredirect(...)

Możliwości JSP Mieszanie kodu i html a <TABLE BORDER=2> <% for ( int i = 0; i < 10; i++ ) { %> <TR> <TD>Numer</TD> <TD><%= i+1%></td> </TR> <% } %> </TABLE>

Możliwości JSP Mieszanie kodu i html a <TABLE BORDER=2> <% for ( int i = 0; i < 10; i++ ) { %> <TR> <TD>Numer</TD> <TD><%= i+1%></td> </TR> <% } %> </TABLE>

Dyrektywa page Użycie bibliotek Java <HTML> <BODY> <% System.out.println( "Evaluating date now" ); java.util.date date = new java.util.date(); %> Hello! The time is now <%= date %> </BODY> </HTML>

Dyrektywa page Użycie bibliotek Java <%@ page import="java.util.*" %> <HTML> <BODY> <% System.out.println( "Evaluating date now" ); Date date = new Date(); %> Hello! The time is now <%= date %> </BODY> </HTML>

Dyrektywa page Użycie bibliotek Java <%@ page import="java.util.*,java.text.*" %> <HTML> <BODY> <% System.out.println( "Evaluating date now" ); Date date = new Date(); %> Hello! The time is now <%= date %> </BODY> </HTML>

Dyrektywa include Dołączanie innych plików do dokumentu <HTML> <BODY> Tutaj będzie zawartość pliku hello.jsp:<br/> <%@ include file="hello.jsp" %> A teraz znów jesteśmy w naszym dokumencie </BODY> </HTML>

Pierwsza aplikacja Kalkulator kredytowy Obliczanie raty kredytu Część prezentacyjna (JSP) Część "logiki biznesowej" (java)

Kalkulator kredytowy Obliczenie wysokości miesięcznej raty spłaty kredytu na podstawie jego kwoty, oprocentowania rocznego i liczby rat miesięcznych rata = kwota* 1 1+ oproc /12 1 ( oproc /12) liczba _ rat

Klasa Kredyt class Kredyt { double kwota; double procent; double lat; public Kredyt(double k, double p, double l) { kwota = k; procent = p; lat = l; } } public double getrata() { double rata = kwota * (procent/12)/ (1-(1/Math.pow(1.0+procent/12,lat*12))); return rata; } Kredyt.java

Tworzenie osobnej klasy Rozdzielenie części prezentacyjnej od części obliczeniowej Programista tworzący interfejs WWW nie musi znać wzoru na obliczanie kredytu Programista tworzący kod obliczający kredyt nie musi wiedzieć gdzie będzie on używany

Nazywanie klas Schemat nazywania DNS od tyłu com.microsoft.jdbc.sqlserver.sqlserverdriver pl.kasprowski.utils.kredyt Jednoznaczna identyfikacja klasy Możliwość używania tego samego kodu w różnych aplikacjach Kolejne nazwy odpowiadają katalogom: c:\mojeklasy\pl\kasprowski\utils\kredyt.java

Klasa Kredyt package pl.kasprowski.utils; class Kredyt { double kwota; double procent; double lat; public Kredyt(double k, double p, double l) { kwota = k; procent = p; lat = l; } } public double getrata() { double rata = kwota * (procent/12)/ } (1-(1/Math.pow(1.0+procent/12,lat*12))); return rata; Kredyt.java

Kredyty na WWW <table> <% int N = 10; for(int i=0; i<n; i++ ) { pl.kasprowski.utils.kredyt kredyt = new pl.kasprowski.utils.kredyt(10000, 0.02, i+1); out.write( <tr> + "<td>lata: "+(i+1)+ </td> + "<td>rata: "+kredyt.getrata()+"</td>"+ "</tr>"); } %> </table>

Kredyty na WWW <%@ page import="pl.kasprowski.utils.*" %> <table> <% int N = 10; for(int i=0; i<n; i++ ) { Kredyt kredyt = new Kredyt(10000, 0.02, i+1); out.write( <tr> + "<td>lata: "+(i+1)+ </td> + "<td>rata: "+kredyt.getrata()+"</td>"+ "</tr>"); } %> </table>

Parametryzacja Dokument index.jsp zawiera formularz w którym użytkownik wpisuje parametry kredytu kwota oprocentowanie Formularz wysyłany jest do dokumentu rezultat.jsp, który oblicza raty dla różnych czasów spłaty

Formularz <form action="result.jsp"> kwota: <input type="text" name="kwota"><br/> oprocentowanie: <input type="text" name="oproc"><br/> <input type="submit"/> </form>

Parametryzacja kwoty Zamiast: Kredyt kredyt = new Kredyt(10000, 0.02, i+1); Wpisujemy: String strkwota = request.getparameter("kwota"); double kwota = Double.parseDouble(strKwota); Kredyt kredyt = new Kredyt(kwota, 0.02, i+1);

Kwota i oprocentowanie for(int i=0; i<n; i++ ) { Kredyt kredyt = new Kredyt( Double.parseDouble(request.getParameter("kwota")), Double.parseDouble(request.getParameter("oproc")), i+1); out.write( <tr> + "<td>lata: "+(i+1)+ </td> + "<td>lata: "+kredyt.getrata()+"</td>"+ "</tr>"); }

Używanie pakietów Pliki JAR format ZIP Struktura pliku JAR Katalogi dla klas Katalog META-INF plik manifest MainClass Plik JAR odpowiada katalogowi na dysku zawierającemu klasy

Nasze nowe narzędzie pracy

Board of Stewards Założyciele (2001): Borland, IBM, MERANT, QNX Software Systems, Rational Software, Red Hat, SuSE, TogetherSoft, Webgain Kolejni członkowie to m.in.: HP, Oracle, SAP, Ericsson, Intel Licencja CPL (Common Public License) Aktualna wersja: 3.1 Duży wybór wtyczek (plug-ins)

Przykładowe wtyczki Amateras HTMLEditor Sysdeo TomcatPlugin AzzuriClay modelowanie baz danych HibernateTools dostęp do baz danych Omondo EclipseUML PHPEclipse

Instalacja wtyczek Help->Software Updates Przegranie pakietu do katalogu plugins

Tworzenie projektu Eclipse New Tomcat project: kredyty Katalog /webapp Plik index.jsp Start Tomcat a http://localhost:8080/kredyty Stworzenie formularza startowego Stworzenie tabelki prezentującej wyniki Stworzenie klasy pl/kasprowski/kredyt.java Wywołanie klasy w tabelce

Dziękuję za uwagę! Materiały: http://www.jsptut.com http://jsptags.com http://www.eclipse.org http://www.kasprowski.pl