Changeset 29:4b6ab4ba1a95

Show
Ignore:
Timestamp:
05/31/09 22:36:58 (15 years ago)
Author:
František Kučera <franta-hg@…>
Branch:
default
Message:

Tipy (rady, citáty…) pro uživatele načítáme z databáze (v náhodném pořadí). + Databázové schéma.

Files:
2 added
2 modified

Legend:

Unmodified
Added
Removed
  • java/sql-vyuka/src/java/cz/frantovo/sql/vyuka/dao/TipyDAO.java

    r16 r29  
    11package cz.frantovo.sql.vyuka.dao; 
    22 
     3import java.sql.Connection; 
     4import java.sql.PreparedStatement; 
     5import java.sql.ResultSet; 
     6import java.util.logging.Level; 
     7 
    38/** 
    4  * 
     9 * Rady, tipy, odkazy, citáty… pro zobrazování uživatelům. 
    510 * @author fiki 
    611 */ 
    712public class TipyDAO extends VyukaSuperDAO { 
    813 
     14    private enum SQL { 
     15 
     16        NAHODNY_TIP 
     17    } 
     18 
     19    /** 
     20     * @return Náhodný tip načtený z databáze 
     21     */ 
    922    public String getTip() { 
    10         /** TODO: Tipy brát z databáze. */ 
    11         return "Stejně vám něco <a href=\"http://frantovo.cz/blog/\">doporučíme</a>."; 
     23        Connection db = getSpojeni(DATABAZE.APLIKACE); 
     24        if (db == null) { 
     25            log.log(Level.SEVERE, "Databáze je null."); 
     26            return null; 
     27        } else { 
     28            PreparedStatement ps = null; 
     29            ResultSet rs = null; 
     30            try { 
     31                ps = db.prepareStatement(getSQL(SQL.NAHODNY_TIP)); 
     32                rs = ps.executeQuery(); 
     33                rs.next(); 
     34                return rs.getString("text"); 
     35            } catch (Exception e) { 
     36                log.log(Level.SEVERE, "Chyba při hledání náhodného tipu.", e); 
     37                return null; 
     38            } finally { 
     39                zavri(db, ps, rs); 
     40            } 
     41        } 
    1242    } 
    1343} 
  • java/sql-vyuka/web/ajax.jspx

    r28 r29  
    1515 
    1616    <c:choose> 
    17         <!-- Akce: Historie a vykonání SQL příkazu --> 
     17        <!-- <Akce: Historie a vykonání SQL příkazu> --> 
    1818        <c:when test="${param.akce == 'historie' || param.akce == 'vykonat'}"> 
     19            <!-- <Načteme výsledek z beany>  --> 
    1920            <c:choose> 
    2021                <c:when test="${param.akce == 'historie'}"> 
     
    2627                </c:when> 
    2728            </c:choose> 
     29            <!-- </Načteme výsledek z beany>  --> 
    2830 
    29             <!-- Tabulky --> 
     31            <!-- <Tabulky> --> 
    3032            <c:forEach var="tabulka" items="${vysledek.tabulky}"> 
    3133                <!-- <lokalizace> --> 
     
    6365                                            <td> 
    6466                                                <fmt:formatDate value="${bunka}" pattern="dd.MM.yyyy HH:mm:ss"/> 
     67                                                <!-- uvnitř vzoru je nedělitelná mezera --> 
    6568                                            </td> 
    6669                                        </c:when> 
     
    8891                </table> 
    8992            </c:forEach> 
     93            <!-- </Tabulky> --> 
    9094 
    91             <!-- Hlášky --> 
     95            <!-- <Hlášky> --> 
    9296            <c:forEach var="hlaska" items="${vysledek.hlasky}"> 
    9397                <p class="vysledek${hlaska.typ}"> 
     
    9599                </p> 
    96100            </c:forEach> 
     101            <!-- </Hlášky> --> 
    97102        </c:when> 
     103        <!-- </Akce: Historie a vykonání SQL příkazu> --> 
    98104 
    99         <!-- Akce: Nápověda --> 
     105 
     106        <!-- <Akce: Nápověda> --> 
    100107        <c:when test="${param.akce == 'napoveda'}"> 
    101108            <p>TODO: nápověda.</p> 
    102109        </c:when> 
     110        <!-- </Akce: Nápověda> --> 
    103111    </c:choose> 
    104112</jsp:root>