Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 1

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

Download "Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 1"

Transkrypt

1 Połączenia między bazami danych i programem w języku Java część 1 1. Java 5.0 Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 1

2 2. JDBC (Java Database Connectivity) - połączenia z relacyjnymi bazami danych. Wprowadzenie Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 2

3 2.1. Cztery kategorie sterowników JDBC 1. JDBC-ODBC bridge plus ODBC driver (Open Database Connectivity): Rodzaj sterownika wspieranego sterownikiem ODBC w dostępie do baz danych (polecenia JDBC są tłumaczone na polecenia ODBC). Potrzebny jest sterownik ODBC wspierający dostęp do wybranej bazy danych oraz dodatkowy kod na każdej maszynie klienta. Najprostsza metoda, jednak należy ją stosować wtedy, gdy brakuje sterownika Javy, bezpośrednio łączącego z wybraną bazą danych (4-ty typ). Sterownik jest zrealizowany za pomocą klasy sun.jdbc.odbc.jdbcodbcdriver Rodzaj sterownika, skompilowanego jnego, który tłumaczy wywołania JDBC na wywołania API klienta następujących baz danych: Oracle, innych. Na każdej maszynie klienta przypadku. Bardziej funkcjonalna i metoda, jednak gorsza od sterownika 2. Native-API partly-java driver: dla wybranego systemu operacy- Sybase, Informix, IBM DB2, i jest potrzebny dodatkowy kod, podobnie jak w pierwszym wydajna metoda niż pierwsza Javy, bezpośrednio łączącego z wybraną bazą danych (4-ty typ). Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 3

4 3. JDBC-Net pure Java driver: Rodzaj sterownika, który tłumaczy wywołania JDBC na niezależny od baz danych protokół sieciowy, który jest dopiero przez specjalny serwer tłumaczony na język danej DBMS. Sterownik jest w pełni napisany w Javie, stanowi elastyczne połączenie do baz danych i jest niezależny od systemu operacyjnego. Nie wymaga instalowania dodatkowego oprogramowania po stronie klienta. 4. Native-protocol pure Java driver: Rodzaj sterownika bezpośrednio łączący wywołania JDBC do protokołu używanego przez DBMSs. Dotyczy to wielu baz danych; Oracle, Sybase, Informix, IBM DB2, Inprise InterBase, i Microsoft SQL Server. Ten sterownik warstwy pośredniczącej jest w pełni napisany w Javie, jest niezależny od systemu operacyjnego i jest wydajniejszy od pierwszej i drugiej metody łączenia z bazami danych. Nie wymaga instalowania dodatkowego oprogramowania po stronie klienta. Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 4

5 Sterowniki Vendor Name Broadband Communications Solutions Corp. Broadband Communications Solutions Corp. J2EE 1.2 J2EE 1.3 J2EE 1.4 JDBC TM API version 2.x 3.x Driver Type(s) ATINAV, INC 1.x 3 Broadband Communications Solutions Corp Broadband Communications Solutions Corp. CONNX Solutions DataDirect Technologies Sun J2EE Licensee 3.x 1 3.x x 3 3.x 3 Easysoft 1.x 3 Easysoft 2.x 3 DBMS(s) Supported FoxPro dbase xbase JDBC DB2 DataFlex/PowerFlex FoxPro Informix Oracle RDB RMS Sybase Text (CSV, Tab separated etc.) VSAM dbase ADABAS Centura SQLBase Clipper Datacom FoxPro IBM AS/400 IDMS IMS Ingres OS/390 Sequential Files OpenIngres Paradox Pervasive.SQL Progress Text (CSV, Tab separated etc.) VSAM XML dbase CISAM InterBase ODBC Oracle RMS CISAM InterBase Conn. Pooling DataSource Dist. Trans RowSets Availability x x x x Now x x x x Now n/a n/a n/a n/a Now n/a x n/a x NO x x x x now x x - x Now x x x x Now Distributed with Sun Java Studio Creator and Sun Java System Application Server Now Now Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 5

6 IDS Software 2.x 3 IDS Software 1.x 3 IDS Software 3.x 3 InfoZoom 1.x 2 InfoZoom 2.x 2 JNetDirect 2.x 1 JNetDirect 1.x 3 4 ODBC Oracle RMS DB2 FoxPro Informix Ingres MySQL ODBC Oracle PostgreSQL Sybase YARD-SQL dbase msql DB2 FoxPro Informix Ingres MySQL ODBC Oracle PostgreSQL Sybase YARD-SQL dbase msql DB2 FoxPro Informix Ingres MySQL ODBC Oracle PostgreSQL Sybase YARD-SQL dbase msql MS Access FoxPro Informix Ingres MS SQL Server MySQL ODBC Oracle Sybase dbase x x - x Now x x - x Now x x x x Now n/a n/a n/a n/a FCS, March 2000 FCS, March 2000 x x x x Now n/a n/a n/a n/a Now Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 6

7 i-net software 2.x 3 iway Software 2.x 3 infozoom 2.x 2 infozoom 1.x 2 pravin 1.x 2 DB2 Informix JDBC MySQL ODBC Oracle PostgreSQL SAP DB Sybase ADABAS ALLBASE SQL CA-IDMS CISAM Cache Cloudscape DL/I Datacom Enscribe IDMS IMS ImageSQL Ingres PICK Progress RDB RMS Redbrick Warehouse Sybase Teradata RDBMS TurboIMAGE UNIFY VSAM dbase OleDB-Provider JDBC Mimer SQL MySQL ODBC Now x x - x Now March 2000 Final n/a n/a n/a n/a Now x x x x yes Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 7

8 2.2. Procedura posługiwania się sterownikiem JDBC-ODBC 1) Utworzenie relacyjnej bazy danych np. w np. katalog.mdb zawierającej tabele Tytul i Ksiazka Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 8

9 2) Połączenie bazy danych ze źródłem danych ODBC, które zostanie skojarzone z plikiem katalog.mdb za pomocą administratora ODBC systemu Windows wywołaj ODBC Data Source Administrator systemu Windows i kliknij na zakładkę User DSN kliknij Add w celu wybrania właściwego sterownika ODBC dla i naciśnij Zakończ w nowym oknie wpisz nazwę nowego źródła danych (Katalog) Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 9

10 po kliknięciu na zakładkę Wybierz wybierz katalog z plikiem katalog.mdb i kliknij OK w celu dodania źródła danych Katalog związanego z plikiem katalog.mdb kliknij OK otrzymano nowe źródło danych Katalog związane z plikiem katalog.mdb (baza danych) Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 10

11 3) napisanie programu wykonanie łańcucha typu String data identyfikującego źródło danych i rodzaj połączenia do bazy danych Łańcuch data składa się z trzech członów: <protokół>:<podprotokół>:<nazwa_źródła_danych> np. data =jdbc:odbc://sprocket.ict.pwr.wroc.pl:5000/katalog lub data ="jdbc:odbc:katalog"; załadowanie sterownika za pomocą wywołania Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");, gdzie metoda forname ładuje klasę o nazwie podanej jako parametr do interpretera ( java.lang) połączenie ze źródłem danych za pomocą klasy Driver Manager (java.sql) polaczenie = DriverManager.getConnection(data, "", ""); gdzie połączenie jest referencją do obiektu typu Connection. Metoda getconnection ma trzy parame: data, nazwę użytkownika (w przykładzie pusta), hasło (w przykładzie puste) przygotowanie polecenia SQL za pomocą obiektu typu Statement: polecenie = polaczenie.createstatement(); przygotowanie zapytania SQL sql="select * FROM Tytul ORDER BY tytul;"; np. do wyboru wszystkich kolumn tabeli Tytul wykonanie zapytania SQL: krotka = polecenie.executequery(sql); zostanie zwrócony wynik zapytania w postaci obiektu typu ResultSet, który ma następujące metody: getdate(string s) zwraca wartość typu Date zawartą w określonej kolumnie wiersza getdouble(string s) zwraca wartość typu double zawartą w określonej kolumnie wiersza getfloat(string s) zwraca wartość typu float zawartą w określonej kolumnie wiersza getint(string s) zwraca wartość typu int zawartą w określonej kolumnie wiersza getlong(string s) zwraca wartość typu long zawartą w określonej kolumnie wiersza getstring(string s) zwraca wartość typu String zawartą w określonej kolumnie wiersza Do nawigacji po pozostałych rekordach uzyskanych po wykonaniu zapytania SQL: next() przejście do następnego rekordu afterlast() przejście do ostatniego rekordu afterfirst() przejście do pierwszego rekordu first() przejście do pierwszego rekordu last() przejście do ostatniego rekordu previous() przejście do poprzedniego rekordu Po zakończeniu pracy ze źródłem danych zamknięcie połączenia polecenie.close(); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 11

12 2.3. Przykłady zastosowania sterowników JDBC-ODBC Przykład 1 import java.sql.*; public class baza7_1 { String data, sql; Connection polaczenie; Statement polecenie; ResultSet krotka; void polaczenie_z_baza() throws SQLException { data="jdbc:odbc:katalog1"; { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch (Exception e) { System.out.println("Nie mozna zaladowac sterownika"); throw new SQLException(e.toString()); polaczenie=drivermanager.getconnection(data,"",""); void wyswietl_tytuly() throws SQLException { polecenie = polaczenie.createstatement(); sql="select * FROM Tytul ORDER BY tytul;"; krotka = polecenie.executequery(sql); while(krotka.next()) { System.out.println( krotka.getstring("tytul")+"\t" +krotka.getstring("autor")+"\t" +krotka.getstring("isbn")); polecenie.close(); static public void main(string arg[]) { baza7_1 baza = new baza7_1(); { baza.polaczenie_z_baza(); baza.wyswietl_tytuly(); catch(sqlexception e) { System.out.println("Blad bazy "+e); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 12

13 Przykład 2 import java.sql.*; public class baza7_2 { String data, sql; Connection polaczenie; Statement polecenie; ResultSet krotka; void polaczenie_z_baza() throws SQLException { data="jdbc:odbc:katalog1"; { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch (Exception e) { System.out.println("Nie mozna zaladowac sterownika"); throw new SQLException(e.toString()); polaczenie=drivermanager.getconnection(data,"",""); void wyswietl_tytuly() throws SQLException { polecenie = polaczenie.createstatement(); sql="select * FROM Tytul ORDER BY tytul;"; krotka = polecenie.executequery(sql); while(krotka.next()) { System.out.println(krotka.getString("tytul")+"\t" +krotka.getstring("autor")+"\t" +krotka.getstring("isbn")); polecenie.close(); void wyswietl_ksiazki() throws SQLException { polecenie = polaczenie.createstatement(); sql="select * FROM Tytul, Ksiazka " +" WHERE id_tytul=id_tytul_ " +" ORDER BY tytul;"; krotka = polecenie.executequery(sql); while(krotka.next()) { System.out.println(krotka.getString("tytul")+"\t" +krotka.getstring("autor")+"\t" +krotka.getstring("isbn")+"\t" +krotka.getstring("numer")); polecenie.close(); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 13

14 static public void main(string arg[]) { baza7_2 baza = new baza7_2(); { baza.polaczenie_z_baza(); System.out.println("Tytuly"); baza.wyswietl_tytuly(); System.out.println("Ksiazki"); baza.wyswietl_ksiazki(); catch(sqlexception e) { System.out.println("Blad bazy "+e); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 14

15 Przykład 3 import java.sql.*; public class baza7_0 { String data, sql; Connection polaczenie; Statement polecenie; ResultSet krotki; void polaczenie_z_baza() throws SQLException { data="jdbc:odbc:katalog"; { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch (Exception e) { System.out.println("Nie mozna zaladowac sterownika"); throw new SQLException(e.toString()); polaczenie=drivermanager.getconnection(data,"",""); void tabele() throws SQLException { polecenie = polaczenie.createstatement(); { polecenie.executeupdate("drop TABLE Ksiazka;"); polecenie.executeupdate("drop TABLE Tytul;"); catch (SQLException e) { System.out.println("Nie mozna usunac tabeli"); { polecenie.executeupdate( "CREATE TABLE Tytul (id_tytul INTEGER, tytul VARCHAR(50),"+ "autor VARCHAR(50), ISBN INTEGER, PRIMARY KEY (id_tytul));"); catch (SQLException e) { System.out.println("Nie mozna zalozyc tabeli Tytul"); { polecenie.executeupdate( "CREATE TABLE Ksiazka (id_ksiazka INTEGER, numer INTEGER, "+ "id_tytul_ INTEGER, PRIMARY KEY (id_ksiazka), "+ "FOREIGN KEY (id_tytul_) REFERENCES Tytul (id_tytul));"); catch (SQLException e) { System.out.println("Nie mozna zalozyc tabeli Ksiazka"); for (int i=1; i<10; i++) { polecenie.executeupdate("insert INTO Tytul (id_tytul, tytul, autor, ISBN)"+ " VALUES ("+i+",'tytul"+i+"','autor"+i+"',"+i+");"); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 15

16 void wyswietl_tytuly() throws SQLException { polecenie = polaczenie.createstatement(); sql="select * FROM Tytul ORDER BY tytul;"; krotki = polecenie.executequery(sql); ResultSetMetaData metadane = krotki.getmetadata(); int kolumny = metadane.getcolumncount(); for (int i=0; i<kolumny; i++) System.out.println("Nazwa kolumny "+i+" "+ metadane.getcolumnname(i+1)); System.out.println(); for (int i=1; i<kolumny; i++) System.out.print(metaDane.getColumnName(i+1)+"\t"); System.out.println("\n"); while(krotki.next()) { System.out.println( krotki.getstring("tytul")+"\t" +krotki.getstring("autor")+"\t" +krotki.getstring("isbn")); polecenie.close(); static public void main(string arg[]) { baza7_0 baza = new baza7_0(); { baza.polaczenie_z_baza(); baza.tabele(); baza.wyswietl_tytuly(); catch(sqlexception e) { System.out.println(e.getMessage()); while(null!= (e=e.getnextexception())) System.out.println(e.getMessage()); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 16

17 Przykład 4 import java.sql.*; import java.io.*; import java.util.*; class WeWy { static String westring(string menu) { InputStreamReader wejscie = new InputStreamReader( System.in ); BufferedReader bufor = new BufferedReader( wejscie ); { System.out.print(menu); return bufor.readline(); catch (IOException e) { System.err.println("Blad IO String"); return ""; static byte weinteger(string menu) { InputStreamReader wejscie = new InputStreamReader( System.in ); BufferedReader bufor = new BufferedReader( wejscie ); StringTokenizer zeton; { System.out.print(menu); zeton = new StringTokenizer(bufor.readLine()); return Byte.parseByte(zeton.nextToken()); catch (Exception e) { System.err.println("Blad Integer "+e); return 0; class Tytul { public String tytul, autor; public int ISBN; // klasa zawierająca składowe typu dane odpowiadająca tabeli Tytul void wstaw_tytul() { tytul = WeWy.weString("Podaj tytul: "); autor = WeWy.weString("Podaj autora: "); ISBN = WeWy.weInteger("Podaj ISBN: "); class Ksiazka // klasa zawierająca składowe typu dane odpowiadająca tabeli Ksiazka { public int numer; void wstaw_ksiazke() { numer = WeWy.weInteger("Podaj numer ksiazki: "); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 17

18 public class baza7_3 { String data, sql; Connection polaczenie; Statement polecenie; ResultSet krotka; void wstaw_tytul() throws SQLException { Tytul t = new Tytul(); t.wstaw_tytul(); polaczenie.setautocommit(false); //wyłączenie bu transakcji auto-commit { polecenie = polaczenie.createstatement(); sql="insert INTO Tytul (tytul, autor, ISBN)"+ " VALUES (' "+t.tytul+ " ',' "+ t.autor+" ',' "+ t.isbn+" ')"; polecenie.addbatch(sql); //wprowadzenie 1 operacji SQL (można podać więcej operacji // w kolejnych wywołanych metodach addbatch) polecenie.executebatch(); //wywołanie wykonania operacji (lub wielu operacji) polaczenie.commit(); //zamknięcie transakcji catch(batchupdateexception e) //wyjątek dziedziczący po SQLException { System.out.println("Wycofanie transakcji"); polaczenie.rollback(); //jeśli wystąpiły problemy, należy odwołać transakcję void wstaw_ksiazke() throws SQLException { Ksiazka k = new Ksiazka(); k.wstaw_ksiazke(); polaczenie.setautocommit(false); { polecenie = polaczenie.createstatement(); String tytul=wewy.westring("podaj tytul ksiazki: "); sql="select * FROM Tytul "+ "WHERE tytul= ' "+tytul+" ';"; krotka=polecenie.executequery(sql); if (!krotka.next()) return; sql="insert INTO Ksiazka (numer, id_tytul_)"+ " VALUES (' "+k.numer+ " ',' "+ krotka.getstring("id_tytul")+" ');"; polecenie.addbatch(sql); polecenie.executebatch(); polaczenie.commit(); catch(batchupdateexception e) { System.out.println("Wycofanie transakcji"); polaczenie.rollback(); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 18

19 void polaczenie_z_baza() throws SQLException { data="jdbc:odbc:katalog"; { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch (Exception e) { System.out.println("Nie mozna zaladowac sterownika"); throw new SQLException(e.toString()); polaczenie=drivermanager.getconnection(data,"",""); void wyswietl_tytuly() throws SQLException { polecenie = polaczenie.createstatement(); sql="select * FROM Tytul ORDER BY tytul;"; krotka = polecenie.executequery(sql); while(krotka.next()) { System.out.println(krotka.getString("tytul")+"\t" +krotka.getstring("autor")+"\t"+krotka.getstring("isbn")); polecenie.close(); void wyswietl_ksiazki() throws SQLException { polecenie = polaczenie.createstatement(); sql="select * FROM Tytul, Ksiazka WHERE id_tytul=id_tytul_ " +" ORDER BY tytul;"; krotka = polecenie.executequery(sql); while(krotka.next()) { System.out.println( krotka.getstring("tytul")+"\t" +krotka.getstring("autor")+"\t" +krotka.getstring("isbn")+"\t" +krotka.getstring("numer")); polecenie.close(); void wyszukaj() throws SQLException { String co = WeWy.weString("Podaj autora: "); polecenie = polaczenie.createstatement(); sql="select * FROM Tytul, Ksiazka "+ " WHERE id_tytul=id_tytul_ AND autor = '" + co +"' "+ " ORDER BY tytul;"; krotka = polecenie.executequery(sql); while(krotka.next()) { System.out.println(krotka.getString("tytul")+"\t" +krotka.getstring("autor")+"\t" +krotka.getstring("isbn")+"\t" +krotka.getstring("numer")); polecenie.close(); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 19

20 void operacje_na_bazie() throws SQLException { int opcja; do { System.out.println("1 - wyswietl tytuly"); System.out.println("2 - wyswietl ksiazki"); System.out.println("3 - wyszukaj ksiazki danego autora"); System.out.println("4 - wstaw tytul"); System.out.println("5 - wstaw ksiazke"); System.out.println("-1 - koniec programu"); opcja = WeWy.weInteger("Podaj opcje: "); switch(opcja) { case 1 : System.out.println("Tytuly"); wyswietl_tytuly(); break; case 2 : System.out.println("Ksiazki"); wyswietl_ksiazki(); break; case 3 : wyszukaj(); break; case 4 : wstaw_tytul(); break; case 5 : wstaw_ksiazke(); break; case -1: System.out.println("Koniec programu"); break; default : System.out.println("Zla opcja"); while(opcja!=-1); static public void main(string arg[]) { baza7_3 baza = new baza7_3(); { baza.polaczenie_z_baza(); baza.operacje_na_bazie(); catch(sqlexception e) {System.out.println("Blad bazy "+e); Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 20

21 2.4. Procedura posługiwania się sterownikiem JDBC na przykładzie sterownika JDataConnect firmy JNetDirect ( Propozycje prostych architektur typu 3 lub 4 z punktu 2.1 Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 21

22 Przykład 1 Wymagania: 1) Łańcuch źródła danych jest poprawny: localhost:1150/katalog.mdb i baza danych działa 2) Zainstalowano ściągnięte oprogramowanie JDBCsetup.exe 3) Uruchomiono program serwera danych: \Program Files\NetDirect\JDataConnect\JDataServer\RunServer.bat 4) Skopiowano JData2_0.jar do katalogu projektu programu 5) Skompilowano projekt 6) Uruchomiono bajtkod np. ExampleApplication.class razem ze sterownikiem JData2_0.jar : java -classpath.;./jdata2_0.jar ExampleApplication Scenariusz programu: 1) Należy załadować sterownik JDBC typu JDataConnect. 2) Należy utworzyć połączenie typu Connection z bazą danych za pomocą JDBC Driver Manager 3) Należy wykonać zapytania na bazie danych (utworzenie obiektu typu Statement i wywołanie jego metody z przekazanym łańcuchem zapytania SQL) 4) Należy wykorzystać uzyskane wyniki zapytania typu ResultSet np. wyświetlenie na ekranie 5) Należy zamknąć połączenie uzyskane w punkcie 2. Programy z przykładów 1-3 są identyczne jedynie zmieniono metodę polaczenie_z_baza void polaczenie_z_baza() throws SQLException { Driver driver; { driver=(driver)class.forname("jdata2_0.sql.$driver").newinstance(); catch (Exception e) { System.out.println("Nie mozna zaladowac sterownika, poniewaz:"+e + ". Prawdopodobnie JData2_0.jar nie jest umieszczony w classpath"); throw new SQLException(e.toString()); { data="jdbc:jdataconnect://localhost:1150/katalog.mdb"; polaczenie = driver.connect(data, new Properties()); catch (SQLException e) { System.out.println ("Nie mozna polaczyc sie z baza danych, poniewaz:"+e); throw e; gdzie localhost reprezentuje adres internetowy (URL) komputera. Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 22

23 Przykład 2 Tworzenie prostego apletu Wymagania: 1) Łańcuch źródła danych jest poprawny: localhost:1150/katalog.mdb i baza danych działa 2) Należy zainstalować ściągnięte oprogramowanie JDBCsetup.exe 3) Należy uruchomić program serwera danych: \Program Files\NetDirect\JDataConnect\JDataServer\RunServer.bat 4) Należy skompilować program np. ExampleApplet.java 5) Należy skopiować JData2_0.jar do katalogu oraz ExampleApplet.class np. do katalogu web serwera 6) Należy uruchomić aplet podając w pliku typu html archive tag dotyczący pliku JData2_0.jar Scenariusz programu: 1) Należy załadować sterownik JDBC typu JDataConnect. 2) Należy utworzyć połączenie typu Connection z bazą danych za pomocą JDBC Driver Manager 3) Należy wykonać zapytania na bazie danych (utworzenie obiektu typu Statement i wywołanie jego metody z przekazanym łańcuchem zapytania SQL) 4) Należy wykorzystać uzyskane wyniki zapytania typu ResultSet np. wyświetlenie na ekranie 5) Należy zamknąć połączenie uzyskane w punkcie 2 public void init() { { driver = (Driver) Class.forName("JData2_0.sql.$Driver").newInstance(); catch (Exception e) { // String host = getcodebase().gethost(); //pobranie adresu web serwera data = "jdbc:jdataconnect://localhost/mydsn:username:password_noproperties" +host+ "jdbc:jdataconnect://localhost/mydsn:username:password_properties"; { polaczenie = driver.connect(data, new Properties()); catch (SQLException e) { // // Autor: Zofia Kruczkiewicz, Programowanie w Internecie, JDBC, część 1 23

Protokół JDBC współpraca z relacyjnymi bazami danych

Protokół JDBC współpraca z relacyjnymi bazami danych Protokół JDBC współpraca z relacyjnymi bazami danych Dr inż. Zofia Kruczkiewicz internetowych wykład 4 1 Java SE 8.0 2 2 Architektura JDBC 2.1.Dwuwarstwowa architektura dostępu do baz danych 3 2. 2. Trójwarstwowa

Bardziej szczegółowo

Połączenia między bazami danych i programem w języku Java część 2

Połączenia między bazami danych i programem w języku Java część 2 Połączenia między bazami danych i programem w języku Java część 2 import java.sql.*; import javax.swing.*; import java.util.*; import javax.swing.*; class Okno extends JFrame JLabel elista= new JLabel

Bardziej szczegółowo

Protokół JDBC współpraca z relacyjnymi bazami danych lab4. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych

Protokół JDBC współpraca z relacyjnymi bazami danych lab4. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych Protokół JDBC współpraca z relacyjnymi bazami danych lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych Zadanie1 Połączenie z bazą danych travel systemu bazodanowego Derby (metoda void

Bardziej szczegółowo

Protokół JDBC współpraca z relacyjnymi bazami danych lab3

Protokół JDBC współpraca z relacyjnymi bazami danych lab3 Protokół JDBC współpraca z relacyjnymi bazami danych lab3 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych JPA, lab3 Zofia Kruczkiewicz 1 Zadanie1 Połączenie z bazą danych Sample systemu

Bardziej szczegółowo

JDBC (Java Database Connectivity vit )

JDBC (Java Database Connectivity vit ) 1 JDBC (Java Database Connectivity) Marek Wojciechowski Czym jest JDBC? 2 JDBC jest standardowym interfejsem do współpracy aplikacji Java z relacyjną bazą danych JDBC definiuje standardowe interfejsy interfejsy

Bardziej szczegółowo

Bezpieczne uruchamianie apletów wg

Bezpieczne uruchamianie apletów wg Bezpieczne uruchamianie apletów wg http://java.sun.com/docs/books/tutorial/security1.2/ Zabezpieczenia przed uruchamianiem apletów na pisanych przez nieznanych autorów 1) ograniczenie możliwości odczytywania,

Bardziej szczegółowo

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

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. Informatyka I Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 Standard JDBC Java DataBase Connectivity

Bardziej szczegółowo

Mechanizmy RMI i JDBC w dostępie do baz danych (Michał Grochala: Java aplikacje bazodanowe, Helion, 2001)

Mechanizmy RMI i JDBC w dostępie do baz danych (Michał Grochala: Java aplikacje bazodanowe, Helion, 2001) Mechanizmy RMI i JDBC w dostępie do baz danych (Michał Grochala: Java aplikacje bazodanowe, Helion, 2001) Klient Aplikacja - Baza Tytul, Ksiazka, Ksiazka_Tytul, WeWy Warstwa pośrednia PolaczenieImpl_stub.class

Bardziej szczegółowo

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

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny

Bardziej szczegółowo

Aplikacje bazodanowe. dr inż. Arkadiusz Mirakowski

Aplikacje bazodanowe. dr inż. Arkadiusz Mirakowski Aplikacje bazodanowe dr inż. Arkadiusz Mirakowski Plan prezentacji interfejs ODBC interfejs JDBC rodzaje sterowników JDBC niezbędne biblioteki interfejsu JDBC instalacja i konfiguracja sterownika JDBC

Bardziej szczegółowo

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

Programowanie w języku Java. Bazy danych SQLite w Javie Programowanie w języku Java Bazy danych SQLite w Javie Co to jest SQLite SQLite to bezserwerowa, nie wymagająca konfiguracji relacyjna baza danych. Znajduje szerokie zastosowanie np.. w systemie android

Bardziej szczegółowo

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

JAVA bazy danych. na bazie: Język Java - Podstawy Programowania - Jacek Rumiński JAVA bazy danych na bazie: Język Java - Podstawy Programowania - Jacek Rumiński Plan wykładu Sposoby połączenia z bazą danych Sterowniki JDBC Połączenie z bazą danych poprzez JDBC Język SQL (Structured

Bardziej szczegółowo

JAVA I BAZY DANYCH. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html

JAVA I BAZY DANYCH. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html JAVA I BAZY DANYCH ZAGADNIENIA: wprowadzenie; JDBC; komunikacja z bazą danych; HSQLDB. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html http://th-www.if.uj.edu.pl/zfs/ciesla/ JĘZYK

Bardziej szczegółowo

Metody dostępu do danych

Metody dostępu do danych Metody dostępu do danych dr inż. Grzegorz Michalski Na podstawie wykładów dra inż. Juliusza Mikody Metody dostępu do danych JDBC - Java Database Connectivity JDO - Java Data Object ORM - Object-Relational

Bardziej szczegółowo

1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)

1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1) Instrukcja tworzenia aplikacji EE na podstawie aplikacji z dostępem do bazy danych, prezentowanej na zajęciach lab.5 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom. Projektowanie i wdrażanie

Bardziej szczegółowo

Mechanizmy RMI i JDBC w dostępie do baz danych

Mechanizmy RMI i JDBC w dostępie do baz danych Mechanizmy RMI i JDBC w dostępie do baz danych Klient Aplikacja - Baza Tytul, Ksiazka, Ksiazka_Tytul, WeWy Warstwa pośrednia PolaczenieImpl_stub.class SesjaImpl_stub.class Warstwa odwołań zdalnych Warstwa

Bardziej szczegółowo

Programowanie w języku Java

Programowanie w języku Java Programowanie w języku Java Wykład 4: Programowanie rozproszone: TCP/IP, URL. Programowanie sieciowe w Javie proste programowanie sieciowe (java.net) na poziomie UDP na poziomie IP na poziomie URL JDBC

Bardziej szczegółowo

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

Programowanie komputerów. Wykład 10: Dostęp do baz danych z poziomu aplikacji Java. (JDBC Database Access) Programowanie komputerów Wykład 10: Dostęp do baz danych z poziomu aplikacji Java (JDBC Database Access) Relacyjne bazy danych Baza danych to zbiór danych powiązanych ze sobą pewnymi relacjami. System

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

Wprowadzenie do JDBC z wykorzystaniem bazy H2

Wprowadzenie do JDBC z wykorzystaniem bazy H2 Wprowadzenie do JDBC z wykorzystaniem bazy H2 JDBC (ang. Java DataBase Connectivity). Biblioteka stanowiąca interfejs umożliwiający aplikacjom napisanym w języku Java porozumiewać się z bazami danych za

Bardziej szczegółowo

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

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Zaawansowane Systemy Decyzyjne. Laboratorium Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski Zaawansowane Systemy Decyzyjne Laboratorium prowadzący: Andrzej Czajkowski 1 Dostęp do Bazy Danych. 1 Cel ćwiczenia. Celem ćwiczenia

Bardziej szczegółowo

dziennik Instrukcja obsługi

dziennik Instrukcja obsługi Ham Radio Deluxe dziennik Instrukcja obsługi Wg. Simon Brown, HB9DRV Tłumaczenie SP4JEU grudzień 22, 2008 Zawartość 3 Wprowadzenie 5 Po co... 5 Główne cechy... 5 baza danych 7 ODBC... 7 Który produkt

Bardziej szczegółowo

STRUMIENIE DANYCH, SERIALIZACJA OBIEKTÓW

STRUMIENIE DANYCH, SERIALIZACJA OBIEKTÓW STRUMIENIE DANYCH, SERIALIZACJA OBIEKTÓW 1. Procedura korzystania ze strumieni danych Aby utworzyć plik: 1) Należy utworzyć obiekt (np. typu FileOutputStream), powiązany ze plikiem danych binarnych (np.

Bardziej szczegółowo

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

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak Wieloplatformowe aplikacje sieciowe dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak SOAP Serwer: Axis2 / Java Wbudowany komponent nasłuchujący, (Apache / Tomcat) Client Axis2 klient / XML Jeżyk programowania:

Bardziej szczegółowo

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

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

Bardziej szczegółowo

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

Rozdział 9 Obsługa baz danych w języku Java Rozdział 9 Obsługa baz danych w języku Java 9.1 Obsługa baz danych w Javie - pakiet SQL 9.2 Utworzenie połączenia z bazą danych 9.3 Sterowniki 9.4 Wysłanie polecenia SQL 9.5 Rezultaty i ich przetwarzanie

Bardziej szczegółowo

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia

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

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

Java Zadanie 1. Aby poprawnie uruchomić aplikację desktopową, należy zaimplementować główną metodę zapewniającą punkt wejścia do programu. Wstęp Java Zadanie Celem laboratorium jest zapoznanie się z podstawami platformy oraz języka Java. W ramach zadania należy przygotować aplikację zarządzania notatkami użytkownika obsługiwaną z konsoli.

Bardziej szczegółowo

Java i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych

Java i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych Java i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych Zadanie do wykonania na następny tydzień: Przedstawić aplikację napisaną w JSP realizującą analogiczne zadania jak pierwsza aplikacja

Bardziej szczegółowo

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

Plan wykładu. Dostęp do bazy danych. Architektura JDBC. Dostęp do baz danych z aplikacji Java EE 1 Plan wykładu 2 Dostęp do bazy danych Dostęp do baz danych w aplikacjach Java EE JDBC Źródła danych część I: JDBC i źródła danych Dostęp do baz danych z aplikacji Java EE Architektura JDBC Programowane

Bardziej szczegółowo

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/

Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Wprowadzenie do technologii JavaServer Faces 2.1 na podstawie http://docs.oracle.com/javaee/6/tutorial/doc/ Aplikacja internetowa tworzona na podstawie bazy danych. Programowanie komponentowe 2, Zofia

Bardziej szczegółowo

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

Podstawy otwartych języków programowania Java Database Connectivity (JDBC) Podstawy otwartych języków programowania Java Database Connectivity (JDBC) Wiktor Wandachowicz Treść wykładu Przypomnienie terminów bazodanowych Architektura JDBC Schemat działania przy dostępie do danych

Bardziej szczegółowo

Programowanie obiektowe zastosowanie języka Java SE

Programowanie obiektowe zastosowanie języka Java SE Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z

Bardziej szczegółowo

Połączenie z bazą danych

Połączenie z bazą danych Połączenie z bazą danych ODBC i JDBC - przykłady w języku Java Standard ODBC Stworzony przez Microsoft Dostępny w Windows (są także bibliotek Linux'owe) Pozwala na dostęp do źródeł danych Programowanie

Bardziej szczegółowo

STRUMIENIE TEKSTOWE WEJŚCIOWE WPROWADZANIE DANYCH STRUMIENIE BAJTOWE, STRUMIENIE TEKSTOWE

STRUMIENIE TEKSTOWE WEJŚCIOWE WPROWADZANIE DANYCH STRUMIENIE BAJTOWE, STRUMIENIE TEKSTOWE STRUMIENIE TEKSTOWE WEJŚCIOWE WPROWADZANIE DANYCH STRUMIENIE BAJTOWE, STRUMIENIE TEKSTOWE 1) Strumienie tekstowe wejściowe wprowadzanie danych Procedura korzystania ze strumieni tekstowych wejściowych

Bardziej szczegółowo

sieć 4) Mechanizm RMI jest zazwyczaj wykorzystywany w rozwiązaniach typu klient-serwer.

sieć 4) Mechanizm RMI jest zazwyczaj wykorzystywany w rozwiązaniach typu klient-serwer. RMI (Remote Method Invocation) zdalne wywołanie metod Część 1 1) RMI jest mechanizmem, który pozwala danej aplikacji: wywoływać metody obiektów zdalnych oraz uzyskać dostęp do obiektów zdalnych (np. w

Bardziej szczegółowo

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK Dostęp do baz danych z serwisu www - PHP Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK Bazy Danych I, 8 Grudzień 2009 Plan Trochę teorii Uwagi techniczne Ćwiczenia Pytania Trójwarstwowy

Bardziej szczegółowo

1.1. System otwartych baz danych ODBC. System otwartych baz danych ODBC. Interfejs ODBC. Interfejs ODBC. System otwartych baz danych ODBC

1.1. System otwartych baz danych ODBC. System otwartych baz danych ODBC. Interfejs ODBC. Interfejs ODBC. System otwartych baz danych ODBC 1 Katedra Optoelektroniki i Systemów Elektronicznych 2 Oprogramowanie Systemów Elektronicznych Zagadnienia: Temat wykładu 1. Interfejs ODBC 2. 3. 3 Interfejs ODBC 4 Interfejs ODBC ODBC (Open DataBase Connectivity)

Bardziej szczegółowo

Podstawowe informacje o bazach danych. Technologie Informacyjne

Podstawowe informacje o bazach danych. Technologie Informacyjne Podstawowe informacje o bazach danych Technologie Informacyjne dr inż. Michna Michał, Politechnika Gdańska 2010/2011 Przykłady systemów baz danych Książka telefoniczna, książka kucharska Zarządzanie magazynem/hurtownią

Bardziej szczegółowo

SPSS. Inc. Instrukcje instalacyjne pakietu Data Access Pack for Windows

SPSS. Inc. Instrukcje instalacyjne pakietu Data Access Pack for Windows i SPSS Inc. Instrukcje instalacyjne pakietu Data Access Pack for Windows Więcej informacji o oprogramowaniu SPSS Inc. można znaleźć w naszej witrynie internetowej http://www.spss.com albo pod adresem SPSS

Bardziej szczegółowo

JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008

JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008 JDBC w LoXiMie Interfejs Java Database Connectivity dla systemu LoXiM Adam Michalik 2008 Sterownik JDBC co to jest? Sterownik JDBC to zbiór klas implementujących interfejsy opisane w specyfikacji JDBC

Bardziej szczegółowo

Wykorzystywanie parsera DOM w programach Java i PL/SQL

Wykorzystywanie parsera DOM w programach Java i PL/SQL Wykorzystywanie parsera DOM w programach Java i PL/SQL Maciej Zakrzewicz mzakrz@cs.put.poznan.pl http://www.cs.put.poznan.pl/~mzakrz/ Parser DOM Aplikacja DOM API Parser DOM Dokument XML Drzewo DOM Parser

Bardziej szczegółowo

Podejście obiektowe. Tablice obiektów Przykład 1 metody i atrybuty statyczne oraz niestatyczne

Podejście obiektowe. Tablice obiektów Przykład 1 metody i atrybuty statyczne oraz niestatyczne Podejście obiektowe. Tablice obiektów Przykład 1 metody i atrybuty statyczne oraz niestatyczne import javax.swing.*; import java.util.*; public class Napis4 { String wynik = ""; static int ile_obiektow

Bardziej szczegółowo

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

JDBC - Obsługa baz danych w języku Java JDBC - Obsługa baz danych w języku Java JDBC (Java Database Conectiviti) jest interfejsem pozwalającym połączyć aplikację Javy z zewnętrzną bazą danych za pomocą odpowiednich sterowników. Dużą zaletą JDBC

Bardziej szczegółowo

Bazy danych SQLite w Javie

Bazy danych SQLite w Javie Bazy danych SQLite w Javie Wprowadzenie Pisząc coraz to bardziej złożone aplikacje często problemem staje się to, że nasze dane chcielibyśmy przechowywać w nieco bardziej elastyczny sposób, niż tylko w

Bardziej szczegółowo

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

Języki i metody programowania Java INF302W Wykład 2 (część 1) Języki i metody programowania Java INF302W Wykład 2 (część 1) Autor Dr inż. Zofia Kruczkiewicz Autor: Zofia Kruczkiewicz, Języki i metody programowania Java, wykład 2, część 1 1 Struktura wykładu 1. Identyfikacja

Bardziej szczegółowo

Database Connectivity

Database Connectivity Oprogramowanie Systemów Pomiarowych 15.01.2009 Database Connectivity Dr inŝ. Sebastian Budzan Zakład Pomiarów i Systemów Sterowania Tematyka Podstawy baz danych, Komunikacja, pojęcia: API, ODBC, DSN, Połączenie

Bardziej szczegółowo

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

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji

Bardziej szczegółowo

Problemy techniczne SQL Server

Problemy techniczne SQL Server Problemy techniczne SQL Server Jak utworzyć i odtworzyć kopię zapasową bazy danych za pomocą narzędzi serwera SQL? Tworzenie i odtwarzanie kopii zapasowych baz danych programów Kadry Optivum, Płace Optivum,

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

Bartosz Jachnik - Kino

Bartosz Jachnik - Kino Bartosz Jachnik - Kino I. Opis bazy Prezentowana baza danych stworzona została na potrzeby prowadzenia kina. Zawiera ona 8 tabel, które opisują filmy grane w danym okresie w kinie, wraz ze szczegółowym

Bardziej szczegółowo

Problemy techniczne SQL Server

Problemy techniczne SQL Server Problemy techniczne SQL Server Jak utworzyć i odtworzyć kopię zapasową za pomocą narzędzi serwera SQL? Tworzenie i odtwarzanie kopii zapasowych baz danych programów Kadry Optivum, Płace Optivum, MOL Optivum,

Bardziej szczegółowo

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

Łączenie z bazą danych przykładowa klasa infpolaczenie import java.sql.drivermanager; import java.sql.connection; import java.sql. Łączenie z bazą danych przykładowa klasa infpolaczenie import java.sql.drivermanager; import java.sql.connection; import java.sql.sqlexception; public class infpolaczenie { public static void main(string[]

Bardziej szczegółowo

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows Spis treści Rozdział 1. Przegląd......... 1 Wstęp................. 1 Wdrażanie technologii Data Access........ 1 Źródła danych

Bardziej szczegółowo

Java Database Connectivity

Java Database Connectivity 1 Java Database Connectivity Java Database Connectivity (JDBC) to specyfikacja określająca zbiór klas i interfejsów napisanych w Javie, które mogą być wykorzystane przez programistów tworzących oprogramowanie

Bardziej szczegółowo

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)

Bardziej szczegółowo

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL Problemy techniczne SQL Server Zarządzanie bazami danych na serwerze SQL Do zarządzania bazami danych na serwerze SQL służy narzędzie Microsoft SQL Server Management Studio. W poradzie tej pokażemy, jak:

Bardziej szczegółowo

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

Języki i metody programowania Java. Wykład 2 (część 2) Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego

Bardziej szczegółowo

akademia androida Składowanie danych część VI

akademia androida Składowanie danych część VI akademia androida Składowanie danych część VI agenda 1. SharedPreferences. 2. Pamięć wewnętrzna i karta SD. 3. Pliki w katalogach /res/raw i /res/xml. 4. Baza danych SQLite. 5. Zadanie. 1. SharedPreferences.

Bardziej szczegółowo

Aplikacje RMI. Budowa aplikacji rozproszonych. Część 2.

Aplikacje RMI. Budowa aplikacji rozproszonych. Część 2. Aplikacje RMI Część 2 Budowa aplikacji rozproszonych http://java.sun.com/j2se/1.5.0/docs/guide/rmi/socketfactory/index.html I. Implementacja gniazd dziedziczących po Socket i ServerSocket oraz produkcji

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

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle Pętle while, for, while, instrukcje break, continue, switch 1. Pętle Przykład 1 - Pętla while public class lab4_3 public static void main(string[] args) char ch = 'a'; String s, wynik=""; while ( ch!=

Bardziej szczegółowo

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL Problemy techniczne SQL Server Zarządzanie bazami danych na serwerze SQL Do zarządzania bazami danych na serwerze SQL służy narzędzie Microsoft SQL Server Management Studio. W poradzie tej pokażemy, jak:

Bardziej szczegółowo

Laboratorium Programowania Kart Elektronicznych

Laboratorium Programowania Kart Elektronicznych Laboratorium Programowania Kart Elektronicznych Programowanie JavaCard Marek Gosławski Przygotowanie do zajęć dokumentacja JavaCard i GlobalPlatform środowisko programistyczne karta JavaCard Potrzebne

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie

Bardziej szczegółowo

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów

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

Paweł Cieśla. Dokumentacja projektu

Paweł Cieśla. Dokumentacja projektu Paweł Cieśla Dokumentacja projektu Projekt Project1 został utworzony i skompilowany na próbnej wersji Delphi XE 4. Po uruchomieniu programu należy kliknąć przycisk Wczytaj plik tekstowy, następnie wskazać

Bardziej szczegółowo

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

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

Bardziej szczegółowo

Podejście obiektowe. Tablice (1) obiektów

Podejście obiektowe. Tablice (1) obiektów 1. Tablice Tablica w Javie jest obiektem. Podejście obiektowe. Tablice (1) obiektów Deklarowanie tablicy String [] nazwy; //równowaŝne deklaracje zmiennej tablicowej String nazwy []; int liczby[]; //zamienna

Bardziej szczegółowo

SIECI KOMPUTEROWE I BAZY DANYCH

SIECI KOMPUTEROWE I BAZY DANYCH KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB2: TEMAT: Relacyjne bazy danych Cz. I, II Cel laboratorium

Bardziej szczegółowo

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

DB+frontend Inne języki H2. Bazy Danych i Systemy informacyjne Wykład 9. Piotr Syga Bazy Danych i Systemy informacyjne Wykład 9 Piotr Syga 30.11.2018 API Przykłady API ODBC JDBC OLEDB ADO.NET data provider API Funkcjonalności Komponenty Główne komponenty odpowiadające za komunikację API/data

Bardziej szczegółowo

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

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język

Bardziej szczegółowo

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

Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej dr inż. Paweł Czarnul pczarnul@eti.pg.gda.pl Architektury usług internetowych laboratorium

Bardziej szczegółowo

Aplikacje Internetowe

Aplikacje Internetowe Aplikacje Internetowe Bazy danych, JSTL JDBC JDBC API pozwala na: Ustalenie połączenia z bazą Wysyłanie poleceń SQL Przetwarzanie rezultatów Sposób działania JDBC Załaduj sterownik Class.forName( DriverClassName);

Bardziej szczegółowo

Db4o obiektowa baza danych wersja.net

Db4o obiektowa baza danych wersja.net Wstęp Db4o obiektowa baza danych wersja.net Db4o (database for objects) to obiektowa baza danych na platformę Java i.net. Pełna wersja bazy db4o jest dostępna na dwóch licencjach: open source: pozwala

Bardziej szczegółowo

Wykład 05 Bazy danych

Wykład 05 Bazy danych Wykład 05 Bazy danych Tabela składa się z: Kolumn Wierszy Wartości Nazwa Wartości Opis INT [UNSIGNED] -2^31..2^31-1 lub 0..2^32-1 Zwykłe liczby całkowite VARCHAR(n) n = długość [1-255] Łańcuch znaków o

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

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

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

JDBC. Plan ćwiczenia. Wywoływanie poleceń SQL z języków programowania. Plan ćwiczenia cd. Wprowadzenie do laboratorium Bazy Danych JDBC Wywoływanie poleceń SQL z języków programowania. Plan ćwiczenia Wprowadzenie do laboratorium. Nawiązywanie i zamykanie połączeń. Wykonywanie zapytań. Wykonywanie aktualizacji. Zarządzanie

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

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z

Bardziej szczegółowo

Pojęcie systemu baz danych

Pojęcie systemu baz danych Pojęcie systemu baz danych System baz danych- skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki. Składa się z zasadniczych elementów: 1) Danych 2) Sprzętu 3) Programów 4)

Bardziej szczegółowo

Laboratorium nr 1. Temat: Wprowadzenie do MySQL-a

Laboratorium nr 1. Temat: Wprowadzenie do MySQL-a Laboratorium nr 1 Temat: Wprowadzenie do MySQL-a MySQL jest najpopularniejszym darmowym systemem obsługi baz danych rozpowszechnianym na zasadach licencji GPL. Jego nowatorska budowa pozwoliła na stworzenie

Bardziej szczegółowo

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1 Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,

Bardziej szczegółowo

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych 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

Bardziej szczegółowo

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

Systemy internetowe. Wykład 4 mysql. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 4 mysql MySQL - wstęp SZBD: komercyjne: Microsoft SQL Server, Oracle, DB2... darmowe: MySQL, PostgreSQL, Firebird... MySQL darmowy (użytek niekomercyjny) Wady: niska wydajność

Bardziej szczegółowo

Laboratorium - Poznawanie FTP

Laboratorium - Poznawanie FTP Cele Część 1: Korzystanie z usługi FTP z wiersza poleceń. Część 2: Pobranie pliku z serwera FTP za pomocą WS_FTP LE Część 3: Korzystanie z usługi FTP w przeglądarce Scenariusz File Transfer Protocol (FTP)

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

Kurs programowania aplikacji bazodanowych

Kurs programowania aplikacji bazodanowych Wykład 1 Instytut Informatyki Uniwersytet Wrocławski Plan wykładu Architektury aplikacji Architektura aplikacji Jednowarstwowa Dwuwarstowa Rozproszona (JDBC) Wprowadzenie Architektura JDBC Sterowniki,

Bardziej szczegółowo

Wykład 2: Podstawy Języka

Wykład 2: Podstawy Języka Wykład 2: Podstawy Języka 1.wprowadzenie 2.podstawy języka 3.sterowanie 4.inicjacja i sprzątanie 5.kontrola dostępu 6.dziedziczenie 7.polimorfizm 8.obsługa błędów 9.kolekcje obiektów 10.wejście i wyjście

Bardziej szczegółowo

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

Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń. Cel: polecenia T-SQL Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS Authentication: SQL Server Authentication Username: student01,, student21 Password: student01,., student21

Bardziej szczegółowo

Języki i metody programowania Java INF302W Wykład 3 (część 1)

Języki i metody programowania Java INF302W Wykład 3 (część 1) Języki i metody programowania Java INF302W Wykład 3 (część 1) Autor Dr inż. Zofia Kruczkiewicz Autor: Zofia Kruczkiewicz, Języki i metody programowania Java, wykład 3, część 1 1 STRUKTURA WYKŁADU 1. Wyjątki,

Bardziej szczegółowo

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1 Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych

Bardziej szczegółowo

Programowanie w Javie Lista nr 1. Wybieramy kategorię Java, a wśród Projektów Java Application i [NEXT]

Programowanie w Javie Lista nr 1. Wybieramy kategorię Java, a wśród Projektów Java Application i [NEXT] Programowanie w Javie Lista nr 1 1. Jak uruchomić pierwszy program w Javie? Przykład przy wykorzystaniu NetBeans: File->New Project Wybieramy kategorię Java, a wśród Projektów Java Application i [NEXT]

Bardziej szczegółowo

Java rozszerzenie. dr. A. Dawid

Java rozszerzenie. dr. A. Dawid Java rozszerzenie PLAN WYKŁADU 1. Java2D AWT SWING Inicjalizacja Metody 2. JDBC Connector 3. Programowanie sieciowe Socket ServerSocket 4. Servlety Serwer internetowy Klasa HttpServlet 5. JSP 6. Java3D

Bardziej szczegółowo

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres

Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres Firebird Alternatywa dla popularnych darmowych systemów bazodanowych MySQL i Postgres Artur Kozubski Software Development GigaCon Warszawa 2008 Plan Historia projektu Firebird Architektura serwera Administracja

Bardziej szczegółowo