Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Duvida com JSP e Servlets Correção.

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    Java Server Pages Duvida com JSP e Servlets Correção.

    Boa tarde, Pessoal.
    Alguém poderia corrigir essas duas classes, por favor, pois não estou conseguindo identificar o erro e não sei se a minha lógica esta correta. Pois ao fazer a pesquisa por nome é apresentada a seguinte mensagem. “Erro: Java. lang.NumberFormatException: for input string” e na pesquisa pelo RA não traz nada.



    package br.com.mcsjava.model;

    import java.sql.*;
    import java.util.*;

    public class AlunoDAO {
    private Connection con = null;

    public AlunoDAO() {
    FabricaConexao fab = new FabricaConexao();
    con = fab.abreConexao();

    if (con == null) System.out.println("Erro ao conectar!");
    }

    public boolean gerencia(AlunoTO dados, int oper){
    try{
    String comando = null;

    if (oper == 1) comando = "INSERT INTO TbAluno (Nome, Curso, RA) VALUES (?, ?, ?)";
    else if (oper == 2) comando = "UPDATE TbAluno SET Nome = ?, Curso = ? WHERE RA = ?";
    else if (oper == 3) comando = "DELETE FROM TbAluno WHERE RA = ?";

    PreparedStatement stm = con.prepareStatement(comando);

    if (oper == 3) stm.setInt(1, dados.getRa());
    else {
    stm.setString(1, dados.getNome());
    stm.setString(2, dados.getCurso());
    stm.setInt (3, dados.getRa());
    }

    return !stm.execute();
    }catch(SQLException erro){
    return false;
    }
    }

    public boolean gerenciaConsulta(AlunoTO dados, int oper) throws SQLException{
    try{
    String comando = null;

    if (oper == 1) comando = "SELECT * FROM TbAluno WHERE RA = ?";
    else if (oper == 2) comando = "SELECT * FROM TbAluno WHERE NOME LIKE ?";

    PreparedStatement stm = con.prepareStatement(comando);
    ResultSet resultado = stm.executeQuery();

    if (oper == 1){
    stm.setInt(1, dados.getRa());

    if (resultado.next()){
    dados.setNome (resultado.getString("Nome"));
    dados.setCurso(resultado.getString("Curso"));
    return true;
    }else return false;
    }else{
    stm.setString(1, dados.getNome());
    stm.setString(2, dados.getCurso());
    stm.setInt (3, dados.getRa());
    if (resultado.next()){
    dados.setNome (resultado.getString("Nome"));
    dados.setCurso(resultado.getString("Curso"));
    return true;
    }else return false;
    }
    }catch(SQLException erro){
    return false;
    }
    }
    }

    ----------------------------------------------------------------------------------------------------------------------------------

    package br.com.mcsjava.servlet;

    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import br.com.mcsjava.model.*;

    public class AlunoServlet extends HttpServlet {

    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    PrintWriter out = response.getWriter();
    String mensagem = "";
    try {
    AlunoTO aluno = new AlunoTO();
    aluno.setRa(Integer.parseInt(request.getParameter( "txt_ra")));
    aluno.setNome(request.getParameter("txt_nome"));
    aluno.setCurso(request.getParameter("txt_curso"));
    int operacao = Integer.parseInt(request.getParameter("operacao")) ;

    AlunoDAO comando = new AlunoDAO();

    if(operacao != 4){
    boolean sucesso = comando.gerencia(aluno, operacao);
    if(sucesso) mensagem = "<font color = '#006699'>Operação OK!</font>";
    else mensagem = "<font color = '#FF0000'>Erro na Operação</font>";
    } else{
    boolean sucesso = comando.gerenciaConsulta(aluno, operacao);

    if(aluno == null) mensagem = "<font color = '#FF0000'>Aluno Inexistente!</font>";
    else{
    RequestDispatcher rd = request.getRequestDispatcher("CadastroAluno.jsp");
    request.setAttribute("dados", aluno);
    rd.forward(request, response);
    }
    }
    } catch(Exception erro) {
    mensagem = "<font color = '#FF0000'>Erro: " +erro+ "</font>";
    } finally{
    out.println("<br><center><h1>" +mensagem+ "</h1></center>");
    out.println("<script>setTimeout('history.back()',3 000);</script>");
    }
    }
    }
X
Working...
X