Ajuda

eu tentei colocar um arquivo de conexao em um arquivo .java e dpois na pagina .jsp chama-lo atraves de um <jsp:useBean> blz…funcionou, mas n consigo desenvolver o sql…entao coloquei o o arquivo conexao dentro da propria pagina .jsp…

&lt;%@ page language=&quot;java&quot; import=&quot;java.sql.*&quot; errorPage=&quot;&quot; %&gt;
&lt;%
    try
    &#123;
	    Class.forName&#40; &quot;org.firebirdsql.jdbc.FBDriver&quot; &#41;.newInstance&#40;&#41;;
	&#125;
	catch&#40; Exception ex &#41;
	&#123;
	   out.write&#40; &quot;Não carregou o Driver&#58; &quot; + ex.toString&#40;&#41; &#41;;
	&#125;

	Connection conexao = DriverManager.getConnection&#40;
		&quot;jdbc&#58;firebirdsql&#58;localhost/3050&#58;&quot;
		+ &quot;c&#58;\\work\\meusite\\WEB-INF\\banco\\meubanco.fdb&quot;,
		&quot;SYSDBA&quot;,&quot;masterkey&quot; &#41;;
%&gt;

ai na minha pagina index.jsp, eu uso assim para exibir os resultados

&lt;%
	PreparedStatement sql  = conexao.prepareStatement&#40;&quot;SELECT * FROM categoria&quot; &#41;;
	ResultSet resultado = sql.executeQuery&#40;&#41;;
	while&#40; resultado.next&#40;&#41; &#41;&#123;
	    String cod_cat   = resultado.getString&#40; &quot;cod_cat&quot; &#41;;
		String nome_cat = resultado.getString&#40; &quot;nome_cat&quot; &#41;;

		out.print&#40;nome_cat&#41;
		%&gt;

o meu problema é o seguinte…nessa mesma pagina index.jsp…tem um topo la em cima q eu tenho um sistema de busca, onde o usuario podera fazer uma busca pelos itens da categoria…ow seja…buscar por livro, cds, informatica…etc…e esses dados estao vindo do banco tbem…mas ai eu tenho q usar assim, tenho q trocar os nomes das variaves para funcionar, ou seja, para cada consulta q eu fizer dentro da mesma pagina…vo ter q criar variaveis diferentes…como no exemplo abaixo

&lt;select name=&quot;tipo&quot; id=&quot;tipo&quot; class=&quot;FormEscolheCategoria&quot;&gt;
                      &lt;option&gt;Todo o site&lt;/option&gt;
		&lt;%
	PreparedStatement sql2  = conexao.prepareStatement&#40;&quot;SELECT * FROM categoria&quot; &#41;;
	ResultSet resultado2 = sql2.executeQuery&#40;&#41;;
	while&#40; resultado2.next&#40;&#41; &#41;&#123;
	    String cod_cat2   = resultado2.getString&#40; &quot;cod_cat&quot; &#41;;
		String nome_cat2 = resultado2.getString&#40; &quot;nome_cat&quot; &#41;;
		%&gt;
		&lt;option&gt;&lt;%=nome_cat2%&gt;&lt;/option&gt;
		&lt;% &#125; %&gt;
                    &lt;/select&gt;

Ai na pagina categoria…eu vou exibir o titulo da categoria, ai tenho q mudar ainda pra sql3…
Eu queria ver com vcs tipo…se tem como eu jogar a conexao para um arquivo .java, fazer um metodo
consultaCategoria() para o sql…ai na pagina .jsp, eu somente chamo o método, para n ter q fazer como eu descrevi acima, ter q ficar fazendo outra consulta sql e ainda tendo q trocar o nome das variaveis…Se vc puder me dar uma ajuda…Valeu!!! vo colocar o arquivo conexao.java abaixo.
Se der pra vcs fazerem um no dedao ai pra mim…ai vcs fazem o arquivo de conexao e exibe os resultados na pagina .jsp, o q eu n consegui foi da pagina .jsp chamar o sql para exibir os resultados…ai fazendo a conexao na propria pagina…eu consegui. e me expliquem para cada chamada sql q eu for buscar da categoria…qual metodo vou ter q utilizar na minha pagina .jsp…

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Conexao &#123;

private static Connection conn = null;

public static Connection getConnection&#40;&#41;&#123;

try&#123;
Class.forName&#40;&quot;org.firebirdsql.jdbc.FBDriver&quot;&#41;;
conn = DriverManager.getConnection&#40;&quot;jdbc&#58;firebirdsql&#58;&quot;+
&quot;localhost/3050&#58;&quot;+
&quot;enderecoDoBanco.gdb&quot;,
&quot;sysdba&quot;,
&quot;masterkey&quot;&#41;;
//System.out.println&#40;&quot;Conexão realizada com sucesso&quot;&#41;; 
&#125;
catch &#40;Exception e&#41; &#123;
System.out.println&#40;&quot;Não foi possível conectar ao banco&#58; &quot; + e.getMessage&#40;&#41;&#41;;
&#125; 
return conn; 
&#125;

public static void desconect&#40;&#41;&#123;
if &#40;conn != null&#41;&#123;
try &#123;
conn.close&#40;&#41;;
//System.out.println&#40;&quot;Conexão finalizada&quot;&#41;; 
&#125;
catch &#40;SQLException e&#41; &#123;
e.printStackTrace&#40;&#41;;
&#125; 
&#125; 
&#125; 
&#125;

Consegui fazer colocando a conexao em um arquivo .java…mas agora ele n esta exibindo as categorias na pagina .jsp por ordem d nome…alguem sabe pq?

JDBCConexao.java

package com.site;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Hashtable;

public class JDBCConexao &#123;

  public Hashtable getCategorias&#40;&#41; throws ClassNotFoundException&#123;
    Hashtable categorias = new Hashtable&#40;&#41;;
    try &#123;
    	Class.forName&#40;&quot;org.firebirdsql.jdbc.FBDriver&quot;&#41;;
      Connection conexao = DriverManager.getConnection&#40;
    			&quot;jdbc&#58;firebirdsql&#58;localhost/3050&#58;&quot;
    			+ &quot;c&#58;\\work\\site\\WEB-INF\\meubanco.fdb&quot;,
    			&quot;SYSDBA&quot;,&quot;masterkey&quot; &#41;;
      Statement stm = conexao.createStatement&#40;&#41;;
      String sql = &quot;SELECT * FROM Categoria order by nome_cat&quot;;
      ResultSet resultado = stm.executeQuery&#40;sql&#41;;
      while &#40;resultado.next&#40;&#41;&#41; &#123;
    	  categorias.put&#40;resultado.getString&#40;1&#41;, resultado.getString&#40;2&#41; &#41;;
      &#125;
      resultado.close&#40;&#41;;
      stm.close&#40;&#41;;
      conexao.close&#40;&#41;;
    &#125;
    catch &#40;SQLException e&#41; &#123;&#125;
    return categorias;
  &#125;

&#125;

teste.jsp

&lt;%@ page import=&quot;java.util.*&quot; %&gt;
&lt;jsp&#58;useBean id=&quot;JDBCConexao&quot; scope=&quot;application&quot; class=&quot;com.ecommerce2.JDBCConexao&quot;/&gt;
&lt;TABLE CELLSPACING=&quot;0&quot; CELLPADDING=&quot;5&quot; WIDTH=&quot;150&quot; BORDER=&quot;0&quot;&gt;
&lt;TR&gt;
  &lt;TD BGCOLOR=&quot;F6F6F6&quot;&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
  &lt;TD BGCOLOR=&quot;F6F6F6&quot;&gt;&lt;FONT FACE=&quot;Verdana&quot;&gt;Categorias&#58;&lt;/FONT&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR VALIGN=&quot;TOP&quot;&gt;
  &lt;TD BGCOLOR=&quot;F6F6F6&quot;&gt;
&lt;%
  Hashtable categorias = JDBCConexao.getCategorias&#40;&#41;;
  Enumeration categoriaId = categorias.keys&#40;&#41;;
  while &#40;categoriaId.hasMoreElements&#40;&#41;&#41; &#123;
    Object cod_cat = categoriaId.nextElement&#40;&#41;;
    out.println&#40;&quot;&lt;A HREF=categoria.jsp?id=&quot; +
      cod_cat.toString&#40;&#41; + &quot;&gt;&quot; +
      categorias.get&#40;cod_cat&#41; + 
      &quot;&lt;/A&gt;&lt;BR&gt;&quot;&#41;;
  &#125;
%&gt;
  &lt;/TD&gt;
&lt;/TR&gt;
&lt;/TABLE&gt;

Não ocorre nenhuma exception ? já tentou debugar ?