Como mostrar dados do banco na tela Web com servlet

5 respostas
J

Sabe como faço para pegar um dado de um campo do banco e mostrar em uma label na tela Web, usando servlet e não Struts?
Não tenho a menor ideia de por onde começar.

5 Respostas

S

você está utilizando jsp certo?

coloque esses dados em algum escopo, como por exemplo request, ou session.

no jsp, recupera a request, e exibe.

pesquise por jstl também. importante manter a arquitetura mvc. abs

A

Fala garoto!! faz o download da apostila da Caelum FJ-21 que vai te ajudar.
http://www.caelum.com.br/apostilas/

J

sim estou usando jsp.
Vou deixar o código do JSP, Servlet e da minha classe DAO.
Acho vai ser mais facil pra eu conseguir entender se você se basear no código que fiz, porque não entendi direito.

JSP:

Lancar Honorario
logoLCA
<%@include file="index.jsp" %>

		
	</div>
	<div class="body">
<form action="LancarHonorarioServlet1" method="post" id="form_lancar_Honorario">
	
<p>
	<label for="num_processo">N Processo:</label>
		<input type="text" id="nun_processo" name="numero_processo"/>
	
		<input type="submit" id="verificarProcesso" name="verificaProcesso" value="Verificar Processo"/>	
</p>

<fieldset id="advogados_honorario">
		 <h5>Advogado:</h5>
			<p>
				<select id="adv">
					<option></option>
					<option>Jose Maciel Santos</option>
					<option>Luiz Carlos Luz</option>
					<option>Manoel Santos</option>
					<option>Maria Rosa Araujo</option>
				
				</select>
					
				
				</p>



<!---------------------- DADOS SETADOS DO BANCO DE DADOS --------------------------------------- -->
	
	
	<fieldset id="dadosCliente_honorario_adv">
		<h5>Dados do Cliente:</h5>
		<p>
			<label for="idcnpj">CNPJ:</label><br />
			<input type="text" id="idcnpj" name="cnpj"/>
		</p>
		
		<p>
			<label for="id_razao_social">Razão Social:</label><br/>
			<input type="text" id="id_razao_social" name="razao_social" size="35"/>
		</p>
		
		</fieldset>

<!-- --------------------------------------------------------------------------------------------------- -->

		
		
		<fieldset id="tabela">
		
		<table id="table_lancar_honorario" border="1" >
		  <tr>
		    <th>DATA</th>
		    <th>OCORRENCIA</th>
		    <th>HORAS</th>
		    <th>VALOR</th>
		  </tr>
		  <tr>
		    <td><input type="text" class="data_honorario" name="data_honorario"/></td>
		    <td> <input type="text" class="orcor_honorario" name="ocorrencia_honorario" /></td>
		  	<td> <input type="text" class="hora_honorario" name="hora_honorario"/></td>
		  	<td> <input type="text" class="valor_honorario" name="valor_honorario"/></td>
		  </tr>
	
		  <tr align="right">
		  	<td colspan="3"  >TOTAL HONORARIO:</td>
		  	<td > 00,00</td>

</p>		
		</fieldset>
		
		
		
		
		
		</fieldset>


</form>
</div>
</div>

DAO:

public class OracleAdvogadoHonorarioDAO implements AdvogadoHonorarioDAO {

public String verificaProcesso(String numero_processo) throws SQLException { 

		Connection conn = null; // conexao com SGBD 
		System.out.println("Conexao aberta!"); 

		try { 

			//Obtem a conexao com o SGBDR 
			conn = ConnectionManager.getInstance().getConnection(); 
			LancarHonorarioServlet1 lancarHonorarioServlet1 = new LancarHonorarioServlet1(); 

			//Cria o PreparedStatement para selecionar o campo numero do processo	
			PreparedStatement HonorarioSelect = conn.prepareStatement("select * from AM_Advogado_Honorario where nr_processo = ?"); 
			//Atribui ao codigo sql o que foi digitado pelo usuario 
			HonorarioSelect.setString(1, numero_processo); 

			//executa a SQL 
			ResultSet rs = HonorarioSelect.executeQuery(); 
			System.out.println("Executou comando select"); 

			if(rs.next()){ 
				return "Numero do processo não encontrado ou inexistente!"; 
			}else{ 
				return "sucesso"; 
			} 

		} catch (Exception e) { 
			e.printStackTrace(); 
			throw new SQLException("Erro ao conectar ou manipular o banco de dados!", e);	
		}finally { 

			if (conn != null) {//se ha uma conexao, fecha ela 
				try { 


					//Fecha a conexao com o SGBDR 
					conn.close(); 

				} catch (SQLException e) { 

					e.printStackTrace(); 
					throw new SQLException("Erro ao fechar a conexao com o banco de dados!", e); 
			
				} 
			} 
		} 
	}

	@Override
	public String incluirHonorario(AdvogadoHonorario advogadoHonorario)
			throws SQLException {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public List<AdvogadoHonorario> listarTodos() throws SQLException {
		// TODO Auto-generated method stub
		return null;
	}

}

Servlet:

public class LancarHonorarioServlet1 extends HttpServlet{

private static final long serialVersionUID = 1L;
public LancarHonorarioServlet1(){ 
	super(); 
} 

@Override 
protected void doGet(HttpServletRequest req, HttpServletResponse resp) 
		throws ServletException, IOException { 
	this.doPost(req, resp); 
} 

@Override 
protected void doPost(HttpServletRequest req, HttpServletResponse resp) 
		throws ServletException, IOException { 

	String btnVerificaProcesso = req.getParameter("verificaProcesso"); 
	String btnLancarHonorario = req.getParameter("lancar_honorario"); 
	String btnIncluirHonorario = req.getParameter("incluir_honorario"); 
	String lblNumeroProcesso = req.getParameter("numero_processo"); 
	String lblCnpj = req.getParameter("cnpj"); 


	System.out.println("B1 " + btnVerificaProcesso); 
	System.out.println("B2 " + btnLancarHonorario); 

	AdvogadoHonorarioBO advogadoHonorarioBO = new AdvogadoHonorarioBO(); 

	if (btnVerificaProcesso != null) { 
		//System.out.println("O numero do processo deve ser verificado! Clique em Verificar Processo"); 
		try { 
			String nr_processo = advogadoHonorarioBO.verificaProcesso(lblNumeroProcesso); 
		} catch (SQLException e) { 
			e.printStackTrace(); 
		} 
		/*}else {
if (“Verificação”.equals(btnVerificaProcesso)) {

try {

String nr_processo = advogadoHonorarioBO.verificaProcesso(lblNumeroProcesso);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}	

}*/
}
}}

Obrigado des de ja

H

Esse exemplo mostra como mostrar um dado na tela. E como navegar: Criando um WebServer

Já pule direto para a parte em que o servidor já foi instalado.

Você precisa dominar uma coisa para depois aprender outra.

Uma vez que você já saiba rodar o tomcat e fazer uma navegação entre servlets, você poderá buscar os dados facilmente do banco de dados e exibir na tela.

J

Então, eu ja olhei esse exemplo de criando um WebServer, mas ao fazer no teste no meu PC na hora que clico no botão para calcular, entro em uma pagina de erro… Embora eu tenha entendido como fazer isso sem usar dados do banco, não tenho a menor ideia de como se faz isso utilizando o banco.
Olhei a apostila da caelum mas não fluiu bem.
Consigo fazer sem usar o banco, com dados estáticos, mas com o banco eu não consigo.
Se alguém puder postar um exemplo detalhado e comentado, porque achei exemplos mas os metidos usados nos exemplos que encontra não estão comentados e fica difícil saber de onde vem cada coisa e pra onde vão.

Grato a todos que estão tentando ajudar.
Peço desculpas pela minha ignorância, mas é que sempre tive dificuldades com programação e também sou iniciante ainda.

Criado 12 de outubro de 2012
Ultima resposta 13 de out. de 2012
Respostas 5
Participantes 4