Vc deve criar uma classe de negocio com sua query, chamar essa classe em uma servlet e passar via request para o jsp, nunca coloque códigos java no seu jsp.
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import br.com.xx.jdbc.ConnectionFactory;
import br.com.xx.struts.model.EmpresaAtendenteBean;
public class EmpresaAtendenteDAO {
private Connection connection;
// construtor que recebe a conexão
public EmpresaAtendenteDAO(Connection con) {
this.connection = con;
}
public EmpresaAtendenteDAO() throws SQLException {
this.connection = ConnectionFactory.getConnection();
}
public List<EmpresaAtendenteBean> getLista() throws SQLException {
String sql = "SELECT CAMPO1,CAMPO2 FROM TABELA";
PreparedStatement stmt = this.connection.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
List<EmpresaAtendenteBean> list = new ArrayList<EmpresaAtendenteBean>();
while (rs.next()) {
EmpresaAtendenteBean empresatendente = new EmpresaAtendenteBean();
empresatendente.setCodigo(rs.getInt("Id"));
empresatendente.setDescricao(rs.getString("Descricao"));
// adicionando o objeto à lista
list.add(empresatendente);
}
rs.close();
stmt.close();
return list;
}
}
//Servlet
EmpresaAtendenteDAO lista = new EmpresaAtendenteDAO()
request.setAttribute("empresatendente", lista.getLista());
//JSP
<select name="empresaAtendente">
<option value="">.. Selecione ..</option>
<c:forEach var="empresa" items="${empresatendente}">
<option value="${empresa.codigo}">
${empresa.descricao}
</option>
</c:forEach>
</select>
No meu jsp estou usando a taglib jstl que deve estar na sua aplicação na pasta lib.
