Boa tarde a todos!
Sou iniciante com java… estou tendo que montar uma página para web que lê dados do BD e exibe na tela dependendo do e-mail digitado pelo usuário.
O banco de dados usado é o mysql 4.0 e o java é o 1.5
Eu fiz o seguinte: criei um bean e uma classe que tem um método que faz o select no BD e depois retorna o objeto bean.
Estou com dois problemas:
- O primeiro é que não estou conseguindo fazer com que o select retorne algum resultado (da nullPointerexception).
- O segundo, é que não sei como utilizar este bean no meu JSP.
Alguém pode dar uma luz??? Já tentei vários testes e nada funcionou
Abaixo encaminho meus códigos:
ExtratoBean.java
package promo;
import java.beans.*;
import java.io.Serializable;
public class ExtratoBean {
private int idUsuario;
private String chave;
private String dataCadastro;
private int mes;
private int ano;
private int minutos;
private String nome;
private int meta;
public ExtratoBean() {
}
public ExtratoBean(int idUsuario, String chave, String dataCadastro, int mes, int ano, int minutos, String nome, int meta) {
this.idUsuario = idUsuario;
this.chave = chave;
this.dataCadastro = dataCadastro;
this.mes = mes;
this.ano = ano;
this.minutos = minutos;
this.meta = meta;
this.nome = nome;
}
public int getIdUsuario() {
return idUsuario;
}
public void setIdUsuario(int idUsuario) {
this.idUsuario = idUsuario;
}
public String getChave() {
return chave;
}
public void setChave(String chave) {
this.chave = chave;
}
public String getDataCadastro() {
return dataCadastro;
}
public void setDataCadastro(String dataCadastro) {
this.dataCadastro = dataCadastro;
}
public int getMes() {
return mes;
}
public void setMes(int mes) {
this.mes = mes;
}
public int getAno() {
return mes;
}
public void setAno(int ano) {
this.ano = ano;
}
public int getMinutos() {
return minutos;
}
public void setMinutos(int minutos) {
this.minutos = minutos;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getMeta() {
return meta;
}
public void setMeta(int meta) {
this.meta = meta;
}
}
Classe Extrato.java
package promo;
import java.util.;
import java.sql.;
import desejo21.ConexaoMysql;
public class Extrato {
static ExtratoBean bean = null;
ResultSet rs = null;
public static ExtratoBean extratoUsuario(String email) {
try {
Connection connection = ConexaoMysql.getConnection();
PreparedStatement pstmt = connection.prepareStatement
("SELECT u.id_usuario, u.chave, u.data_cadastro, e.mes, e.ano, e.minutos, p.nome, p.meta " +
"FROM extrato e, usuario u, premio p " +
"WHERE u.id_usuario = e.id_usuario " +
"AND u.id_premio = p.id_premio " +
"AND u.chave = ?");
pstmt.setString(1, email);
ResultSet rs = pstmt.executeQuery();
bean = new ExtratoBean(rs.getInt("id_usuario"), rs.getString("chave"),
rs.getString("data_cadastro"), rs.getInt("mes"),
rs.getInt("ano"), rs.getInt("minutos"),
rs.getString("nome"), rs.getInt("meta"));
pstmt.close();
connection.close();
} catch (Exception e) {
System.out.println("Erro no comando SQL de Consulta " + e);
}
return bean;
}
}
extrato.jsp
<%@page contentType=“text/html”%>
<%@page pageEncoding=“ISO-8859-1”%>
<%@page import=“promo.*”%>
<%
String email = request.getParameter(“email”);
%>
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
“http://www.w3.org/TR/html4/loose.dtd”>
<html>
<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=ISO-8859-1”>
<title></title>
</head>
<body>
<%@ include file="topo.jsp" %>
<h1>Extrato</h1>
<table>
<tr>
<td><%@ include file="menu.jsp" %></td>
<td>
<%
if(email == null) {
%>
<form method="get" action="extrato.jsp">
Digite seu e-mail para poder acessar seu extrato<br>
<input type="text" name="email"> <input type="submit" name="enviar" value="Ok">
</form>
<%
} else {
ExtratoBean extrato = Extrato.extratoUsuario(email);
%>
Premio: <%= extrato.getChave() %><br>
Minutos navegados: <br>
Meta: <br>
Ainda faltam xx minutos de navegação para você atingir sua meta!
<%
}
%>
</td>
</tr>
</table>
</body>
</html>
Obrigada