Witam
Napisałem servlet który wysyła zapytania do bazy a nastepnie wyswietla je na webie.
try {
Class.forName("org.firebirdsql.jdbc.FBDriver");
System.out.println("Zainstalowano sterownik");
}
catch (ClassNotFoundException ex) {Logger.getLogger(ServletExample.class.getName()).log(Level.SEVERE, null, ex);}
try {
Connection polaczenie = DriverManager.getConnection(DB_CONNECTION_STRING, DB_PASSWORD, DB_USER);
System.out.println("Nawiazano polaczenei z baza danych");
Statement stmt = polaczenie.createStatement();
String zapytanie = "select * from pers";
wyniki = DatabaseUtilities.getQueryResults(STEROWNIK, DB_CONNECTION_STRING, DB_USER, DB_PASSWORD, zapytanie, true);
polaczenie.close();
}
catch (SQLException ex) {Logger.getLogger(ServletExample.class.getName()).log(Level.SEVERE, null, ex);}
response.getWriter().println("<html>");
response.getWriter().println("<head>");
response.getWriter().println("<title>Odpowiedz z serwera: </title>");
response.getWriter().println("</head>");
response.getWriter().println("<body>");
response.getWriter().println("<br><br>"+"Wyswietlone zostana wyniki zapytania 'SELECT * FROM PERS' wszystkie z generatorem tabeli");
<b>response.getWriter().print("<br><br>"+wyniki.toHTMLTable("CYAN"));</b>
response.getWriter().println("</body>");
response.getWriter().println("</html>");
Dane pobrane z bazy pormatowane sa do tabelki i wyswietlane na stronie za pomoca metody ktora gdzies kiedys znalazlem:
public String toHTMLTable(String headingColor)
{
StringBuffer buffer =new StringBuffer("<TABLE BORDER=1>\n");
if (headingColor != null)
{buffer.append(" <TR BGCOLOR=#FDF5E6\"" + headingColor + "\">\n "); }
else {buffer.append(" <TR>\n "); }
for(int col=0; col<getColumnCount(); col++)
{
buffer.append("<TH>" + columnNames[col]);
}
for(int row=0; row<getRowCount(); row++)
{
buffer.append("\n <TR>\n ");
String[] rowData = getRow(row);
for(int col=0; col<getColumnCount(); col++)
{
buffer.append("<TD> " + rowData[col]);
}
}
buffer.append("\n</TABLE>");
return(buffer.toString());
}
Działa to dobrze za wyjatkiem jednego przypadku. Gdy zawartosc danej komorki w bazie (potem majacej wyswietlic sie jako komorka tabelki) wynosi: "" czyli nie (nie null) tabelka wyswietla sie bez obramowania tej komorki.
Chciałem zastapic "" (te pustke) znakiem spacji " " no ale jakoś mi się nie udało dalej wyświetla sie komórka bez obramowania. Co tu zrobić abym mial wełna tabelke zez wzgledu na to czy jest cos w komorce czy nie?