Propojení javascriptu a servletu.
1 package cz.frantovo.sql.vyuka.dto;
3 import cz.frantovo.sql.vyuka.Html;
4 import java.util.ArrayList;
5 import java.util.Collection;
8 * Tabulka, která je výsledkem SQL dotazu.
11 public class Tabulka implements HtmlObjekt {
13 private String[] zahlavi;
14 private Collection<Object[]> hodnoty = new ArrayList<Object[]>();
16 public String getHtml() {
18 if (getZahlavi() == null || getHodnoty() == null || getZahlavi().length < 1) {
19 return "<p>Chybná tabulka</p>";
22 StringBuffer html = new StringBuffer();
24 html.append("<table>");
27 html.append("<thead title=\"Chceš setřídit výsledek podle nějakého sloupce? Co takhle ORDER BY sloupec.\">");
29 for (String z : getZahlavi()) {
30 html.append("<td>" + Html.escapuj(z) + "</td>");
33 html.append("</thead>");
36 html.append("<tbody>");
37 for (Object[] hh : getHodnoty()) {
39 html.append(formatujRadek(h));
42 html.append("</tbody>");
44 html.append("</table>");
47 return html.toString();
51 private String formatujRadek(Object o) {
52 if (o instanceof Integer) {
53 return "<td class=\"cislo\">" + Html.escapuj(String.valueOf(o)) + "</td>";
55 return "<td>" + Html.escapuj(String.valueOf(o)) + "</td>";
59 public String[] getZahlavi() {
63 public void setZahlavi(String[] zahlavi) {
64 this.zahlavi = zahlavi;
67 public Collection<Object[]> getHodnoty() {
71 public void setHodnoty(Collection<Object[]> hodnoty) {
72 this.hodnoty = hodnoty;