Anna Zatwarnicka

Bazy danych V rok informatyki studia dzienne


Jak łączyć się z baza danych na ORACLE’u za pomocą JSP znajdującym się na elektrze.





Opis problemu:
Na elektrze jest postawiony Apache-Tomcat działający na porcie 8000 (a nie na 8080 tak jak standardowo się instaluje – dlatego, żeby się nie myliło z PROXY, bo na PO są różne blokady na obce proxy) Każdy ze studentów, będzie miał u siebie w katalogu domowym, katalog „jsp” do którego będzie wrzucał swoje skrypty. (tak naprawdę, to jest link do innego katalogu, którego struktura jest gdzieś schowana w systemie).
Oglądać swoje dzieło możemy pod http://elektra.po.opole.pl:8000/dxxxxx/
Gdzie dxxxxx to numer albumu studenta.

Jak?:
Połączenie z bazą danych realizuje się przez JDBC (Java Database Connectivity)
standard interfejsu API, służący do połączenia języka Java z relacyjnymi bazami danych.
W tym celu potrzeba mieć odpowiedni sterownik do Oracle (ODBC) ale twórcy Tomcata zadbali o wszystko i jest on standardowo (jako jedna z klas). Gorzej z MySQL i PgSQLem.

Aby ustanowić połączenie z bazą, potrzeba znać tzw. instancję bazy z którą chcemy się połączyć, oraz katalog domowy ORACLE. Można te dane uzyskać w następujący sposób:
Trzeba się zalogować na serwer, na którym jest ORACLE jako użytkownik Linux’a (czyli dxxxxx), a następnie napisać:
prompt> echo $ORACLE_HOME
pokaże się:
/u01/app/oracle/product/8.1.7
i jeszcze:
prompt> echo $ORACLE_SID
i uzyskamy:
ora1

Te dane będą potrzebne do logowania w JSP do serwera ORACLE.
Podczas logowania musimy wysłać nazwę użytkownika ORACLE i hasło. Czyli będzie to dxxxxx.... i ddyyy....
Ogólny schemat postępowania wygląda tak:

Connection conn = null;
String dba="jdbc:oracle:thin:@10.0.4.4:1521:ora1";
Class.forName("oracle.jdbc.driver.OracleDriver");

conn = DriverManager.getConnection(dba,"dxxxxx_uzytkownik",”dd_haslo");
Statement stmt = conn.createStatement();

ResultSet rs;
rs = stmt.executeQuery(“SELECT * from tabela”);

itd.

Ściągawka na http://www.javasoft.pl/ Polecam.



Utworzone przez: Z.Hołdys

Udostepniam za zgodą autora
    A.Zatwarnicka