Changeset 29:4b6ab4ba1a95
- 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:
-
Legend:
- Unmodified
- Added
- Removed
-
r16
|
r29
|
|
1 | 1 | package cz.frantovo.sql.vyuka.dao; |
2 | 2 | |
| 3 | import java.sql.Connection; |
| 4 | import java.sql.PreparedStatement; |
| 5 | import java.sql.ResultSet; |
| 6 | import java.util.logging.Level; |
| 7 | |
3 | 8 | /** |
4 | | * |
| 9 | * Rady, tipy, odkazy, citáty… pro zobrazování uživatelům. |
5 | 10 | * @author fiki |
6 | 11 | */ |
7 | 12 | public class TipyDAO extends VyukaSuperDAO { |
8 | 13 | |
| 14 | private enum SQL { |
| 15 | |
| 16 | NAHODNY_TIP |
| 17 | } |
| 18 | |
| 19 | /** |
| 20 | * @return Náhodný tip načtený z databáze |
| 21 | */ |
9 | 22 | 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 | } |
12 | 42 | } |
13 | 43 | } |
-
r28
|
r29
|
|
15 | 15 | |
16 | 16 | <c:choose> |
17 | | <!-- Akce: Historie a vykonání SQL příkazu --> |
| 17 | <!-- <Akce: Historie a vykonání SQL příkazu> --> |
18 | 18 | <c:when test="${param.akce == 'historie' || param.akce == 'vykonat'}"> |
| 19 | <!-- <Načteme výsledek z beany> --> |
19 | 20 | <c:choose> |
20 | 21 | <c:when test="${param.akce == 'historie'}"> |
… |
… |
|
26 | 27 | </c:when> |
27 | 28 | </c:choose> |
| 29 | <!-- </Načteme výsledek z beany> --> |
28 | 30 | |
29 | | <!-- Tabulky --> |
| 31 | <!-- <Tabulky> --> |
30 | 32 | <c:forEach var="tabulka" items="${vysledek.tabulky}"> |
31 | 33 | <!-- <lokalizace> --> |
… |
… |
|
63 | 65 | <td> |
64 | 66 | <fmt:formatDate value="${bunka}" pattern="dd.MM.yyyy HH:mm:ss"/> |
| 67 | <!-- uvnitř vzoru je nedělitelná mezera --> |
65 | 68 | </td> |
66 | 69 | </c:when> |
… |
… |
|
88 | 91 | </table> |
89 | 92 | </c:forEach> |
| 93 | <!-- </Tabulky> --> |
90 | 94 | |
91 | | <!-- Hlášky --> |
| 95 | <!-- <Hlášky> --> |
92 | 96 | <c:forEach var="hlaska" items="${vysledek.hlasky}"> |
93 | 97 | <p class="vysledek${hlaska.typ}"> |
… |
… |
|
95 | 99 | </p> |
96 | 100 | </c:forEach> |
| 101 | <!-- </Hlášky> --> |
97 | 102 | </c:when> |
| 103 | <!-- </Akce: Historie a vykonání SQL příkazu> --> |
98 | 104 | |
99 | | <!-- Akce: Nápověda --> |
| 105 | |
| 106 | <!-- <Akce: Nápověda> --> |
100 | 107 | <c:when test="${param.akce == 'napoveda'}"> |
101 | 108 | <p>TODO: nápověda.</p> |
102 | 109 | </c:when> |
| 110 | <!-- </Akce: Nápověda> --> |
103 | 111 | </c:choose> |
104 | 112 | </jsp:root> |