Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Podobne dokumenty
Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Java i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych

Java Database Connectivity

Bazy danych wykład dwunasty

JAVA bazy danych. na bazie: Język Java - Podstawy Programowania - Jacek Rumiński

Wprowadzenie do JDBC z wykorzystaniem bazy H2

Metody dostępu do danych

JDBC (Java Database Connectivity vit )

JAVA I BAZY DANYCH. MATERIAŁY:

Kurs programowania aplikacji bazodanowych

Programowanie komputerów. Wykład 10: Dostęp do baz danych z poziomu aplikacji Java. (JDBC Database Access)

Aplikacje WWW - laboratorium

PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych:

Dostęp do baz danych z aplikacji J2EE

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Java Zadanie 1. Aby poprawnie uruchomić aplikację desktopową, należy zaimplementować główną metodę zapewniającą punkt wejścia do programu.

Programowanie w języku Java. Bazy danych SQLite w Javie

JDBC - Obsługa baz danych w języku Java

Aplikacje bazodanowe. dr inż. Arkadiusz Mirakowski

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się.

Enterprise JavaBeans (EJB)

Wprowadzenie do Doctrine ORM

Connection con = DriverManager.getConnection(dbUrl, username, passwd);

Java Database Connectivity

DB+frontend Inne języki H2. Bazy Danych i Systemy informacyjne Wykład 9. Piotr Syga

Programowanie Obiektowe Java

Plan wykładu. Dostęp do bazy danych. Architektura JDBC. Dostęp do baz danych z aplikacji Java EE

Obsługa transakcji rozproszonych Java. Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska

Podstawy programowania III WYKŁAD 2

Programowanie Obiektowe Java

INFORMATOR TECHNICZNY WONDERWARE. Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory

Podstawy otwartych języków programowania Java Database Connectivity (JDBC)

1) Przygotowanie środowiska pracy.

JDBC. Plan ćwiczenia. Wywoływanie poleceń SQL z języków programowania. Plan ćwiczenia cd. Wprowadzenie do laboratorium

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Zaawansowane Systemy Decyzyjne. Laboratorium

Połączenie z bazą danych

Rozdział 9 Obsługa baz danych w języku Java

Łączenie z bazą danych przykładowa klasa infpolaczenie import java.sql.drivermanager; import java.sql.connection; import java.sql.

Ćwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z

Instrukcja tworzenia aplikacji bazodanowej opartej o technologię Oracle i platformę.net

Aplikacje WWW - laboratorium

Typy sterowników. Rozdział 21 JDBC. Podstawowe kroki aplikacji. Historia. Program napisany w języku Java JDBC API. Menadżer sterowników JDBC

PROJEKTOWANIE SYSTEMU INFORMATYCNEGO

Instalacja NOD32 Remote Administrator

Podejście obiektowe do relacyjnych baz danych Hibernate.

Oracle PL/SQL. Paweł Rajba.

CREATE USER

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki

Programowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Database Connectivity

Oracle Application Express

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

SQL Server Configuration Manager centrum dowodzenia

Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013. Visual Basic.NET dostęp do bazy danych. Baza Microsoft SQL Server Compact

Wykład 3 Inżynieria oprogramowania. Przykład 1 Bezpieczeństwo(2) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Bazy Danych i Systemy informacyjne Wykład 5. Piotr Syga

STWORZENIE BIBLIOTEKI SŁUŻĄCEJ DO WCZYTYWANIA

Projektowanie aplikacji internetowych laboratorium

BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech

Internetowe bazy danych

Założenia do ćwiczeń: SQL Server UWM Express Edition: \SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.

Instalacja i konfiguracja rouera ASMAX AR 904u. Neostrada, Netia

Aplikacje Internetowe

Oracle PL/SQL. Paweł Rajba.

Język SQL, zajęcia nr 1

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

Podstawy Pentaho Data Integration

Instrukcja instalacji programu ARPunktor wraz z serwerem SQL 2005 Express

Instrukcja obsługi programu CMS Dla rejestratorów HANBANG

Instrukcja obsługi i konfiguracji telefonu Yealink T32G (v )

Cisco SPA1xx (SPA112, SPA122)

instrukcja instalacji w systemie Mac OS modemu USB ZTE ZXDSL 852

Bazy danych i usługi sieciowe

AKTYWNY SAMORZĄD. Instrukcja instalacji, aktualizacji i konfiguracji.

Kostki OLAP i język MDX

Instrukcja obsługi serwera FTP v

I2: J2ME programowanie w NetBeans IDE Wydział Transportu PW semestr /11

Linksys/Cisco SPA2102, SPA3102 Instrukcja Konfiguracji

PL/SQL. Zaawansowane tematy PL/SQL

Platformy Technologiczne

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Podstawowe wykorzystanie Hibernate

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012:

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Dokumentacja wdrożeniowa Project Lord 1.0

Technologia JDBC w praktyce

Oracle11g: Wprowadzenie do SQL

Autor: Joanna Karwowska

Obrona przed SQL-injection w aplikacjach Java/JEE

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Telefon AT 530 szybki start.

Praca z programami SAS poza lokalną siecią komputerową UZ. Zestawienie tunelu SSH oraz konfiguracja serwera proxy w przeglądarce WWW

mysql> UPDATE user SET Password=PASSWORD('pass') WHERE user='root'; Query OK, 2 rows affected (0.05 sec) Rows matched: 2 Changed: 2 Warnings: 0

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

Mapowanie obiektowo-relacyjne z wykorzystaniem Hibernate

Bazy Danych i Usługi Sieciowe

Transkrypt:

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych http://www.mini.pw.edu.pl/~lucknerm

Utworzenie tabeli w Oracle Utworzenie użytkownika Utworzenie połączenia w NetBeans Utworzenie tabeli z poziomu NetBeans Utworzenie servletu Podłączenie do bazy danych z poziomu servletu Szereg skomplikowanych operacji 2014-02-26 2

1. Uruchom usługi Oracle (jeśli konieczne) 2. Uruchom http://localhost:1158/em w przeglądarce internetowej 3. Zaloguj się przy pomocy danych uzyskanych na zajęciach 4. Na podstronie Administration/User Utwórz nowego użytkownika nazwanego swoim loginem Przydziel mu rolę DBA 2014-02-26 3

1. Uruchom Netbeans 2. Otwórz zakładkę Services 3. Wybierz grupę Databases 4. Z menu kontekstowego obiektu Databases wybierz New Connection 5. Wybierz sterownik Oracle Thin (ojdbc6.jar) 6. Podaj na kolejnych ekranach Username - login utworzonego użytkownika Password - jego hasło Hostname localhost W pozostałych polach pozostaw ustawienia domyślne 7. Przetestuj utworzone połączenie 8. Połączenie do localhost zastało utworzone z użyciem portu TCP/IP 1521 2014-02-26 4

1. Wybierz połączenie i schemat 2. Utwórz tabelę Persons Pola id (int), Name (vchar(20)), Surname (vchar(50)) Wprowadź kilka rekordów 3. Uruchom Execute command Wpisz SELECT * FROM persons Uruchom zapytanie 2014-02-26 5

Utwórz nowy projekt New project->java Web->Web Application W Source Packages dodaj servlet (menu kontekstowe) Uruchom Servlet Metody doget, dopost 2014-02-26 6

Pobieranie połączenia do bazy danych na podstawie nazwy Definiowane poprzez JDBC Resource Zapisywane w Server Resource np. glassfishsources.xml <jdbc-resource jndi-name="jdbc/mydatasource"> </jdbc-resource> 2014-02-26 7

Pobranie kontekstu w którym wyszukujemy źródła danych new initialcontex(); Wyszukiwanie źródła danych na podstawie nazwy lookup(dbname); String dbname = jdbc/mydatasource ; InitialContex initialcontex = new InitialContex(); javax.sql.datasource ds. = (javax.sql.datasource) initialcontext.lookup(dbname); 2014-02-26 8

Uzyskanie połączenia do bazy danych getconnection(); Należy dodać obsługę wyjątków Warto utworzyć odrębną klasę zwracającą połączenie na podstawie nazwy Zamykanie java.sql.connection conn = ds.getconnection(); conn.close(); 2014-02-26 9

Tworzenie klasy obsługującej zapytania createstatement(); Wywoływanie zapytań SELECT executequery(); UPDATE, INSERT, DELETE executeupdate(); Zapytania typu SELECT zwracają ResultSet Zamykanie Statement stmt = conn.createstatement(); String query = SELECT * FROM PERSONS ResultSet resultset= stmt.executequery(query); stmt.close(); 2014-02-26 10

Opis danych (metadane) Klasa ResultSetMetaData Liczba zwracanych kolumn getcolumncount() odczyt kolejnych rekordów resultset.next() Odczyt zwracanych wartości resultset.getstring(index) Indeksacja od 1! ResultSetMetaData rsmd = resultset.getmetadata(); int nrofcol = rsmd.getcolumncount(); while( resultset.next() ) for(int i=0; i< nrofcol ; i++) resultset.getstring(i+1); 2014-02-26 11

InitialContext initialcontext = new InitialContext(); javax.sql.datasource ds = (javax.sql.datasource) initialcontext.lookup(dbname); java.sql.connection conn = ds.getconnection(); Statement stmt = conn.createstatement(); ResultSet resultset= stmt.executequery(query); ResultSetMetaData rsmd = resultset.getmetadata(); int numberofcolumns = rsmd.getcolumncount(); String result+="<table>"; result+="<tr>"; while( resultset.next() ){ for(int i=0; i< numberofcolumns; i++){ result+="<td>" + resultset.getstring(i+1) + "</td>";} result+="</tr>";} result+="</table>"; stmt.close(); conn.close(); 2014-02-26 12

Podłącz się do bazy danych umieszczonej na innym komputerze Zbadaj możliwości klasy ResultSetMetaData Spróbuj przeprowadzić operacje INSERT, UPDATE, DELETE Używając executequery Używając executeupdate 2014-02-26 13