...
Chaque canal déclare dans son fichier de configuration les connexions qu'il est susceptible d'utiliser, et ce de la manière suivante :
| Pas de formatcode |
|---|
<pools> <pool *name="nom logique du pool" *type="JNDI ou JDBC" *url="Nom du pool tomcat si JNDI ou URL du driver JDBC" driverClassName="classe du driver si JDBC" username="nom du user pour la connexion JDBC" password="password pour la connexion JDBC"/> ...... </pools> * = obligatoire |
Il est à noter que les balises "pool" désignent soit un pool Tomcat (type=JNDI), soit une connexion JDBC simple (type=JDBC).
...
Pour pouvoir utiliser les connexions, on récupère sous forme de hashMap la liste des connexions définies dans le fichier de configuration du canal. Il s'agit d'une liste d'objet Database.
| Pas de formatcode |
|---|
private HashMap connexions = Config.getInstance().getPools(); |
...
- Soit en utilisant la connexion définie comme "default" (attribut name) dans le fichier de configuration :
| Pas de formatcode |
|---|
qry = Config.getInstance().getConnexionDefault(); |
- Soit en utilisant la hashMap de connexions avec comme clé le nom logique du pool
| Pas de formatcode |
|---|
qry = new Query((Database) connexions.get("Apogee1"));
|
Il suffit alors d'effectuer son ordre SQL de la façon suivante :
| Pas de formatcode |
|---|
try {
qry = new Query((Database) connexions.get("Apogee1"));
qry.setSQL("select distinct a.g_n2_cod || '|' || a.g_n3_cod \"CODE\",....
"from nw_adm_acces@NABUCOWEB a, g_nv3@NABUCOWEB n " +
"where a.login = ? and n.g_n1_cod = a.g_n1_cod .... ");
// on passe les paramètres à la requête
qry.getStmt().setString(1, login);
// on exécute l'ordre SQL
qry.select();
while (qry.getRs().next()){
<traitement du resultset>
}
}
catch (SQLException e) {
LogService.log(LogService.ERROR ,<msg d'erreur>);
}
finally {
qry.close();
}
|
...