Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wprowadzenie do JSP Copyright © Politecnico di Milano September 2003 Translation: Kamil Żyła, Politechnika Lubelska.

Podobne prezentacje


Prezentacja na temat: "Wprowadzenie do JSP Copyright © Politecnico di Milano September 2003 Translation: Kamil Żyła, Politechnika Lubelska."— Zapis prezentacji:

1 Wprowadzenie do JSP Copyright © Politecnico di Milano September 2003 Translation: Kamil Żyła, Politechnika Lubelska

2 2 Plan Etapy przetwarzania strony Etapy przetwarzania strony Struktura strony JSP Struktura strony JSP Przykładowe strony JSP Przykładowe strony JSP Lista elementów Lista elementów Lista hiperłączy Lista hiperłączy Strona z detalami o elemencie Strona z detalami o elemencie Lista wielokrotnego wyboru Lista wielokrotnego wyboru Usunięcie instancji Usunięcie instancji Łańcuchy operacji Łańcuchy operacji Translation: Kamil Żyła, Politechnika Lubelska

3 3 Etapy przetwarzania strony Przetwarzanie strony JSP zawsze zawiera poniższe operacje Dekodowanie parametrów Połączenie z bazą danych Przygotowanie zapytań Wykonanie zapytań Przedstawienie wyników 1. Dekodowanie parametrów żądania 2. Połączenie z bazą danych & Przygotowanie i wykonanie zapytań HTTP request Parametry żądania 3. Wyświetlenie zawartości strony i linków Wyniki zapytań HTTP response Translation: Kamil Żyła, Politechnika Lubelska

4 4 Struktura strony JSP Translation: Kamil Żyła, Politechnika Lubelska

5 5 Strony JSP: przykład 1 LISTA ELEMENTÓW <% // DATABASE CONNECTION 4 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 5 Connection conn = DriverManager.getConnection 6 ("jdbc:odbc:acme", "acmeuser", "acmepwd"); 7 // QUERY PREPARATION AND EXECUTION 8 Statement stmt = conn.createStatement(); 9 ResultSet result = stmt.executeQuery( 10 "SELECT NAME FROM NEWSCATEGORY ORDER BY NAME"); 11 %> News Categories Page <% 30 result.close(); 31 stmt.close(); 32 conn.close(); 33 %> Strona wyświetlająca listę kategorii Newsów na podstawie danych pobranych z bazy danych Połączenie z bazą danych (ODBC) Definicja i wykonanie zapytania Wypisanie danych zwróconych przez zapytanie Translation: Kamil Żyła, Politechnika Lubelska

6 <% // DATABASE CONNECTION 4 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 5 Connection conn = DriverManager.getConnection 6 ("jdbc:odbc:acme", "acmeuser", "acmepwd"); Ustawiony język : Java Importowane biblioteki : java.sql Class.forName(…) : Ładuje sterownik bazy danych AUTOMATYCZNIE rejestruje swoją instancję w obiekcie DriverManager Connection: połączenie z bazą danych Strony JSP: przykład 1 LISTA ELEMENTÓW Translation: Kamil Żyła, Politechnika Lubelska

7 7 7 // QUERY PREPARATION AND EXECUTION 8 Statement stmt = conn.createStatement(); 9 ResultSet result = stmt.executeQuery( 10 "SELECT NAME FROM NEWSCATEGORY ORDER BY NAME"); 11 %> createStatement : tworzy pusty obiekt klasy Statement (interfejs do wykonywania zapytań) executeQuery : zawiera zapytanie do bazy danych przyjmuje łańcuch znaków stanowiący zapytanie w języku SQL zwraca obiekt ResultSet (zawiera wynik zapytania) Strony JSP: przykład 1 LISTA ELEMENTÓW Translation: Kamil Żyła, Politechnika Lubelska

8 … Generowanie znaczników i zawartości strony while (result.next()): powtarza {…} aż do przejrzenia całej kolekcji zwróconej w obiekcie ResultSet result.getString(…): zwraca wartość wskazanego atrybutu dla wskazanej instancji ResultSet Strony JSP: przykład 1 LISTA ELEMENTÓW Translation: Kamil Żyła, Politechnika Lubelska

9 <% 30 result.close(); 31 stmt.close(); 32 conn.close(); 33 %> Close (czynności porządkowe): Obiekty ResultSet Obiekty Statement Obiekty Connection Strony JSP: przykład 1 LISTA ELEMENTÓW Translation: Kamil Żyła, Politechnika Lubelska

10 10 Strony JSP: przykład 2 LISTA HIPERŁĄCZY 7 // QUERY PREPARATION AND EXECUTION 8 Statement stmt = conn.createStatement(); 9 ResultSet result = stmt.executeQuery( 10 "SELECT NAME,OID FROM NEWSCATEGORY ORDER BY NAME"); 11 %> Strona wyświetlająca listę kategorii newsów Każda nazwa kategorii jest kotwicą do strony wyświetlającej szczegółowe informacje o kategorii Translation: Kamil Żyła, Politechnika Lubelska

11 Atrybut Name jest wyświetlany jako kotwica Atrybut OID jest używany do złożenia wartości href kotwicy OID jest przekazywany jako parametr w adresie URL strony docelowej Strony JSP: przykład 2 LISTA HIPERŁĄCZY Translation: Kamil Żyła, Politechnika Lubelska

12 12 Strony JSP: przykład 3 SZCZEGÓŁOWE INFO O JEDNYM ELEMENCIE <% // REQUEST PARAMETERS FETCH 4 String categoryDUInput = request.getParameter("categoryDU"); 5 // DATABASE CONNECTION 6 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 7 Connection conn = DriverManager.getConnection("jdbc:odbc:acme", 8 "acmeuser", "acmepwd"); 9 // QUERY PREPARATION 10 PreparedStatement pstmt = conn.prepareStatement( 11 "SELECT NAME, DESCRIPTION FROM NEWSCATEGORY WHERE OID = ?"); 12 pstmt.setString(1, categoryDUInput); 13 // QUERY EXECUTION 14 ResultSet result = pstmt.executeQuery(); 15 %> Przygotowanie i wykonanie zapytania z parametrami Translation: Kamil Żyła, Politechnika Lubelska

13 Name 24 Description Pozyskanie pojedynczej krotki (if zamiast while) Pozyskanie wielu atrybutów dla pojedynczej instancji (NAME, DESCRIPTION) Strony JSP: przykład 3 SZCZEGÓŁOWE INFO O JEDNYM ELEMENCIE Translation: Kamil Żyła, Politechnika Lubelska

14 14 Strony JSP: przykład 4 LISTA WIELOKROTNEGO WYBORU Użycie znaczników formularza Dynamiczna konstrukcja pola wejściowego typu checkbox Translation: Kamil Żyła, Politechnika Lubelska

15 15 Strony JSP: przykład 5 USUNIĘCIE INSTANCJI 3 <% // REQUEST PARAMETERS FETCH 4 String selectedOID = request.getParameter("OID"); 5 // DATABASE CONNECTION 6 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 7 Connection conn = DriverManager.getConnection(...); 9 // QUERY PREPARATION AND EXECUTION 10 PreparedStatement pstmt = conn.prepareStatement( 11 "DELETE FROM NEWSCATEGORY WHERE OID = ?"); 12 pstmt.setString(1, selectedOID); 14 try { 15 pstmt.executeUpdate(); 16 } catch (SQLException e) { 17 pageContext.forward("errorPage.jsp"); // KO LINK 18 } 19 pstmt.close(); // TEMPORARY OBJECTS DISPOSITION 20 conn.close(); 21 pageContext.forward("newsCategories.jsp"); // OK LINK 22 %> Translation: Kamil Żyła, Politechnika Lubelska

16 16 Łańcuch operacji Translation: Kamil Żyła, Politechnika Lubelska

17 17 Źródła JDBC : JSP: Translation: Kamil Żyła, Politechnika Lubelska


Pobierz ppt "Wprowadzenie do JSP Copyright © Politecnico di Milano September 2003 Translation: Kamil Żyła, Politechnika Lubelska."

Podobne prezentacje


Reklamy Google