SQL


Wstęp

Konektor pozwala na połączenie się z bazą danych i wykonanie operacji na bazie danych - odczyt, zapis, update, create. Konektor obsługuje tranzakcyjność. Implementacja konektora znajduje się w klasie palio.connectors.SQLConnector. Jak każdy konektor w jPALIO jest on z definicji w puli. W jPALIO jest on używany w module Sql.

Konfiguracja konektora

Konfiguracja konektora może wyglądać w sposób następujący:

<connector name="sample"  url="jdbc:...">
</connector>

Poprzez nazwę konektora możemy dokonywać operacji z poziomu modułu Sql. Odpowiedni konektor (driver konkretnej bazy) jest pobierany automatycznie na podstawie podanego adresu URL (atrybut url w konfiguracji konektora).

Przykład podstawowej konfiguracji konektora Sql.

<connector name="sample" url="jdbc:...">
<user>login</user>
<password>******</password>
...
</connector>

Dostęp do parametrów konfiguracyjnych realizowany jest poprzez pole properties w klasie bazowej.

Atrybuty wspierane definiowane dla konektora Sql:

Przykładowa pełna konfiguracji konektora:

 

<connector name="palio" url="jdbc:oracle:thin:@pingwin.torn.com.pl:6372:ePALIO" refresh="0" traceRead="true" traceWrite="true" traceExecute="true">
<user>jpalio</user>
<password>torn</password>
<maxConnections>0</maxConnections>
<minConnections>0</minConnections>
<maxInactivity>15</maxInactivity>
 <maxUseCount>100000</maxUseCount>
 <maxLifeTime>720</maxLifeTime>
</connector>

GenericSQLConnector

GenericSQLConnector pozwala połączyć się z każdą bazą SQL która posiada driver JDBC nawet jeśli nie jest on wspierany natywnie w jPALIO. W takiej sytuacji należy przy konfiguracji konektora wskazać klasę GenericSQLConnector, podać parametr driver który oznacza nazwę klasy głównej danego drivera JDBC oraz do katalogu lib jPALIO należy wgrać odpowiedni driver JDBC bazy danych. Przykład:

<connector name="informix" class="GenericSQLConnector" url="jdbc:informix-sqli://host:port[/dbname]:INFORMIXSERVER=server_name;user=user_name;password=password_name" refresh="0" traceRead="true" traceWrite="true" traceExecute="true">
<driver>com.informix.jdbc.IfxDriver</driver>
</connector>