java/HrisniciSpameri/src/java/cz/frantovo/hrisniciSpameri/dao/HrisniciSuperDAO.java
author František Kučera <franta-hg@frantovo.cz>
Thu Feb 12 21:03:27 2009 +0100 (2009-02-12)
changeset 18 1d606f50ae21
parent 6 38625daa449b
child 20 90dc76051e56
permissions -rw-r--r--
MANIFEST.MF – přidáme zajímavé informace
     1 package cz.frantovo.hrisniciSpameri.dao;
     2 
     3 import cz.frantovo.superDAO.SuperDAO;
     4 import java.sql.Connection;
     5 import java.sql.SQLException;
     6 import java.util.logging.Level;
     7 import javax.naming.InitialContext;
     8 import javax.naming.NamingException;
     9 import javax.sql.DataSource;
    10 
    11 /**
    12  *
    13  * @author fiki
    14  */
    15 public class HrisniciSuperDAO extends SuperDAO {
    16 
    17     protected InitialContext kontext = null;
    18 
    19     protected enum DATABAZE {
    20 
    21         HRISNICI
    22     }
    23 
    24     public HrisniciSuperDAO() {
    25         try {
    26             kontext = new InitialContext();
    27         } catch (NamingException ex) {
    28             log.log(Level.SEVERE, "Chyba při inicializaci kontextu", ex);
    29         }
    30     }
    31 
    32     /**
    33      * <ul>
    34      *  <li>Webová část zadává jako parametr null →
    35      *  dostane výchozí spojení do PostgreSQL databáze obsahující vygenerované souhrny.</li>
    36      *  <li>Generovací servlet zadává JNDI jméno databáze cíle →
    37      *  dostane zdrojovou databázi, ze které vygeneruje denní souhrny a výsledek uloží do výchozí databáze.</li>
    38      * </ul>
    39      * @param jndi JNDI jméno, pokud je null, vrací výchozí spojení.
    40      * @return Databázové spojení
    41      */
    42     protected Connection getSpojeni(String jndi) {
    43         if (jndi == null || jndi.length() < 1) {
    44             jndi = getVlastnost(DATABAZE.HRISNICI, HrisniciSuperDAO.class);
    45         }
    46         jndi = orizniJNDI(jndi);
    47         DataSource zdroj = null;
    48         try {
    49             System.out.println("XXXXXX:" + jndi + ":XXXXX");
    50             zdroj = (DataSource) kontext.lookup(jndi);
    51             return zdroj.getConnection();
    52         } catch (NamingException ex) {
    53             log.log(Level.SEVERE, "getSpojeni: lookup", ex);
    54             return null;
    55         } catch (SQLException ex) {
    56             log.log(Level.SEVERE, "getSpojeni: sql", ex);
    57             return null;
    58         }
    59     }
    60 }