Cadastro de dados de um formulario usando somente JSP

4 respostas
F

Fala pessoal,

Sou novo aqui e tb estou começando a estudar jsp, java etc. Eu queria saber se tem como eu criar uma página de formulario, que quando o botão submit for clicado, ele insere os dados dos campos do formulario num banco MYSQL e numa outra página aparece uma resposta do tipo "Concluido".

OBS: somente utilizando JSP sem servlets ou beans.

Se alguem puder me dar uma ajuda inicial(Código)… será muito bem vinda…

obrigado pela atenção

Fvilella

4 Respostas

R

Brother, acho que só com JSP vai ficar meio estranho ein?
Tu vai ter que criar objeto de conexão, statement, DriverManager, SQL, tudo na página.
Além de ficar completamente sem padrão nenhum.

Mas se quiser fazer assim, o mesmo tipo de conexão que vc faria num servlet, é só fazer na página, e recupera na outra as respostas, através do objeto request.

F
Essa class conecta com o banco.
package servlets.exemplos;

import java.io.*;
import javax.servlet.*; 
import javax.servlet.http.*;
import java.sql.*;
import java.lang.*;

public class Conecta extends HttpServlet {
	
	private Connection conexao = null;
	private Statement declaracao = null;
	private String pesquisa = null;
        private ResultSet resultado = null;
        
	public void Conecta() {
		try {
			Class.forName("org.gjt.mm.mysql.Driver").newInstance();
			conexao = DriverManager.getConnection("jdbc:mysql://localhost/estudo");
			declaracao = conexao.createStatement();
		} catch (SQLException e) {
			System.out.println("Nao foi possivel Conecta()");
		}catch (Exception e) {
			System.out.println("Driver não carregado");
		}
	}
}
Essa cadastra no banco.
package servlets.exemplos;

import java.io.*;
import javax.servlet.*; 
import javax.servlet.http.*;
import java.sql.*;
import java.lang.*;

public class Cadastro extends HttpServlet {

	private Connection conexao = null;
        private String atualiza = null;
	private PreparedStatement declPreparada = null;	
	Conecta nConecta = new Conecta();
	
	public void inserirDados(String nome, String bairro, String telefone, String CPF) {
		nConecta.Conecta();
		try {
			atualiza = "INSERT INTO clientes (nome, bairro, telefone, CPF) VALUES (?, ?, ?, ?)";
			declPreparada = conexao.prepareStatement(atualiza);
			declPreparada.setString(1, nome);
			declPreparada.setString(2, bairro);
			declPreparada.setString(3, telefone);
			declPreparada.setString(4, CPF);
			declPreparada.executeUpdate();
		} catch (SQLException e) {
			System.out.println("Nao foi possivel cadastrar()");
		}
	}
        
        
}

O que eu preciso fazer funcionar??? as classes estão erradas??? o que tem que colocar no jsp pra funcionar???

olha como esta o jsp...

<%@ page import="java.util.*" %>
<%@ page import="javax.servlet.*" %>
<%@ page import="javax.servlet.http.*" %>
<%@ page import="servlets.exemplos.*" %>

<%!
	String nome = null;
	String bairro = null;
	String telefone = null;
	String CPF = null;
%>

<%
	nome = request.getParameter("nome");
	bairro = request.getParameter("bairro");
	telefone = request.getParameter("telefone");
	CPF = request.getParameter("CPF");
%>

<%
		Cadastro nCadastro = new Cadastro();
  //              if ( request.getParameter("nome") != null) {
                nCadastro.inserirDados(nome, bairro, telefone, CPF);
  //              resultado = nCadastro.consulta(nome, bairro);
//	}
%>
A

Cara, mas se por caso vc insistir em fazer tudo no JSP, tenho uma ideia:
Na tag <%! %> Crie as funções de Acesso a banco e chame elas no jsp, no final da pagina, é meio absurdo mas funciona!

F

Resolvi utilizar servlets! olha os codigos acima… o que tem de errado???

Valeu

Criado 26 de agosto de 2004
Ultima resposta 26 de ago. de 2004
Respostas 4
Participantes 3