java/SuperPostak/src/cz/frantovo/superPostak/DataSQL.java
author František Kučera <franta-hg@frantovo.cz>
Sun Nov 23 22:19:20 2008 +0100 (2008-11-23)
changeset 0 e76872ad5226
child 3 03d27d3b3f7b
permissions -rw-r--r--
Přidání SuperPošťáka do Mercurialu (původně byl v Subversionu)
Postak – základ, knihovna
SuperPostak – GUI nadstavba
SuperPostak2 – pokus o implementaci aplikace jako modulu pro Netbeans, POZOR: není přidán do Mercurialu, možná později (pravděpodobně se ale nebude používat)
franta-hg@0
     1
/*
franta-hg@0
     2
 * To change this template, choose Tools | Templates
franta-hg@0
     3
 * and open the template in the editor.
franta-hg@0
     4
 */
franta-hg@0
     5
package cz.frantovo.superPostak;
franta-hg@0
     6
franta-hg@0
     7
import cz.frantovo.postak.InternetAddressKomu;
franta-hg@0
     8
import java.io.UnsupportedEncodingException;
franta-hg@0
     9
import java.sql.Connection;
franta-hg@0
    10
import java.sql.PreparedStatement;
franta-hg@0
    11
import java.sql.ResultSet;
franta-hg@0
    12
import java.sql.SQLException;
franta-hg@0
    13
import java.util.ArrayList;
franta-hg@0
    14
import java.util.Collection;
franta-hg@0
    15
import java.util.logging.Level;
franta-hg@0
    16
import java.util.logging.Logger;
franta-hg@0
    17
franta-hg@0
    18
/**
franta-hg@0
    19
 * Třída pro vykonávání SQL dotazů
franta-hg@0
    20
 * @author fiki
franta-hg@0
    21
 */
franta-hg@0
    22
public class DataSQL {
franta-hg@0
    23
franta-hg@0
    24
    private static Logger log = Logger.getLogger(DataSQL.class.getName());
franta-hg@0
    25
    private Connection spojeni;
franta-hg@0
    26
franta-hg@0
    27
    public DataSQL(Connection spojeni) {
franta-hg@0
    28
        this.spojeni = spojeni;
franta-hg@0
    29
    }
franta-hg@0
    30
franta-hg@0
    31
    /**
franta-hg@0
    32
     * Provede SQL příkaz a získá z něj e-mailové adresy.
franta-hg@0
    33
     * Zatím předpokládá pouze jediný sloupec, který obsahuje adresu.
franta-hg@0
    34
     */
franta-hg@0
    35
    public Collection<InternetAddressKomu> getAdresy(String sql) throws SQLException, UnsupportedEncodingException {
franta-hg@0
    36
        ArrayList<InternetAddressKomu> vysledek = new ArrayList<InternetAddressKomu>();
franta-hg@0
    37
franta-hg@0
    38
        if (sql == null || sql.length() < 3) {
franta-hg@0
    39
            log.log(Level.FINER, "Prázdný SQL dotaz");
franta-hg@0
    40
            return null;
franta-hg@0
    41
        } else {
franta-hg@0
    42
            PreparedStatement ps = spojeni.prepareStatement(sql);
franta-hg@0
    43
            ResultSet rs = ps.executeQuery();
franta-hg@0
    44
            while (rs.next()) {
franta-hg@0
    45
                vysledek.add(new InternetAddressKomu(rs.getString(1), rs.getString(1)));
franta-hg@0
    46
            }
franta-hg@0
    47
            return vysledek;
franta-hg@0
    48
        }
franta-hg@0
    49
    }
franta-hg@0
    50
}