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