Como criar um cadastro

6 respostas
P
public class CadCliente extends Pessoa {

	
	public static void main(String[] args) {
		// TODO Auto-generated method stub

	}

}

Acima está o meu esqueleto da Minha classe Cadastra Clientes. Eu coloquei, mas antes que alguém possa falar, não coloquei para ninguém fazer por mim. Apenas me dizer o melhor caminho a ser seguido, e como começar. Uma coisa é vc ler livros e estudar e outra é meter a mão na massa. Aí começam a aparecer as dúvidas. Bem, haverá um formulário de cadastro na internet, como os respectivos campos, como: NOME, CPF,RG,ENDEREÇO,SEXO,FONE e etc... Essa é minha dúvida. Na classe pessoa já existe os Getters e Setters. Agora como eu procedo na classe CadClie, para que quando o usuário preencher o Formulário, e eu gravar isso já no banco de dados?(Oracle e Postgres).
Eu gostaria de receber uma ajuda, do tipo, este é o caminho.

6 Respostas

ateubh

Primeiro defina qual o framework e o servidor de aplicação você vai usar.

L

Depois de definido os atributos da Classe Cliente " Nome CNPJ et all"
Ai voce cria uma Classe de Conexão com o Banco ou apontar um init no XML mais facil
Ai então voce cria o DAO com todas funçoes e excessões necessarias tipo “update, delete, insert, select”.

Framework agilisa bastante não tenha duvida

P

Isto significa que a minha classe CadCliente é a que vai ser a de gravação. Ela vai extender outra classe(DAO) conforme vcs me passaram. Quanto ao Framework, o que por exemplo, tipo, Hibernate, e etc? É isso?

L

Isto mais não a chame de CadCliente isto faz pensar que nesta classe so serve para gravar dados

package model;



import controller.FormatUtils;
import java.sql.*;
import java.util.ArrayList;
import controller.vo.Cliente;

public class ClienteDAO {
    private static PreparedStatement pstmt = null;
    private static ResultSet rs = null;
    
    public static boolean create(Cliente cliente) {
        try {
            cliente.setCodCliente(Conexao.getAutoInc("Cliente"));
            
            String dataNasc = cliente.getDataNasc();
            
            dataNasc = FormatUtils.formatDateJdbc(dataNasc);
            
            pstmt = Conexao.getConnection().prepareStatement(
                    "Insert Into Cliente(CodCliente, CodCidade, Nome, cpf, dataNasc, endereco, bairro, fone, email) " +
                    "Values(?,?,?,?,?,?,?,?,?)");
            pstmt.setInt(1, cliente.getCodCliente());
            pstmt.setInt(2, cliente.getCidade().getCodCidade());
            pstmt.setString(3, cliente.getNome());
            pstmt.setString(4, cliente.getCpf());
            pstmt.setString(5, dataNasc);
            pstmt.setString(6, cliente.getEndereco());
            pstmt.setString(7, cliente.getBairro());
            pstmt.setString(8, cliente.getFone());
            pstmt.setString(9, cliente.getEmail());
            pstmt.executeUpdate();
            pstmt.close();
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }
    
    public static boolean update(Cliente cliente) {
        String dataNasc = cliente.getDataNasc();
        
        dataNasc = FormatUtils.formatDateJdbc(dataNasc);
        
        try {            
            pstmt = Conexao.getConnection().prepareStatement(
                    "Update Cliente Set CodCidade=?, Nome=?, cpf=?, dataNasc=?, endereco=?, bairro=?, fone=?, email=? Where CodCliente = ?");
            pstmt.setInt(1, cliente.getCidade().getCodCidade());
            pstmt.setString(2, cliente.getNome());            
            pstmt.setString(3, cliente.getCpf());
            pstmt.setString(4, dataNasc);
            pstmt.setString(5, cliente.getEndereco());
            pstmt.setString(6, cliente.getBairro());
            pstmt.setString(7, cliente.getFone());
            pstmt.setString(8, cliente.getEmail());
            pstmt.setInt(9, cliente.getCodCliente());
            pstmt.executeUpdate();
            pstmt.close();
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }
    
    public static boolean delete(Cliente cliente) {
        try {
            pstmt = Conexao.getConnection().prepareStatement(
                    "Delete From Cliente Where CodCliente = ?");
            pstmt.setInt(1, cliente.getCodCliente());
            pstmt.executeUpdate();
            pstmt.close();
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }
    
    public static ArrayList<Cliente> getAll() {       
        try {
            ArrayList<Cliente> listAll = null;
            Cliente cliente = new Cliente();            
            pstmt = Conexao.getConnection().prepareStatement(
                    "Select * From Cliente Order By Nome");
            rs = pstmt.executeQuery();           
            
            if (rs.next()) {
                listAll = new ArrayList<Cliente>();
                do {                    
                    cliente = new Cliente();
                    
                    /*formata data*/
                    String dataNasc = rs.getDate("DataNasc").toString();
                    dataNasc = FormatUtils.formatDateUser(dataNasc);
                    
                    cliente.setCodCliente(rs.getInt("CodCliente"));
                    cliente.setCidade(CidadeDAO.getById(rs.getInt("CodCidade")));                    
                    cliente.setNome(rs.getString("Nome"));
                    cliente.setCpf(rs.getString("cpf"));
                    cliente.setDataNasc(dataNasc);
                    cliente.setEndereco(rs.getString("Endereco"));
                    cliente.setBairro(rs.getString("Bairro"));
                    cliente.setFone(rs.getString("Fone"));
                    cliente.setEmail(rs.getString("Email"));
                    listAll.add(cliente);
                } while (rs.next());
            }
            rs.close();
            pstmt.close();
            return listAll;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    
    public static Cliente getById(int Id) {
        try {
            Cliente cliente = null;
            pstmt = Conexao.getConnection().prepareStatement(
                    "Select * From Cliente Where CodCliente = ?");
            pstmt.setInt(1, Id);
            rs = pstmt.executeQuery();
            if (rs.next()) {
                cliente = new Cliente();
                    
                /*formata data*/
                String dataNasc = rs.getDate("DataNasc").toString();
                dataNasc = FormatUtils.formatDateUser(dataNasc);

                cliente.setCodCliente(rs.getInt("CodCliente"));
                cliente.setCidade(CidadeDAO.getById(rs.getInt("CodCidade")));                    
                cliente.setNome(rs.getString("Nome"));
                cliente.setCpf(rs.getString("cpf"));
                cliente.setDataNasc(dataNasc);
                cliente.setEndereco(rs.getString("Endereco"));
                cliente.setBairro(rs.getString("Bairro"));
                cliente.setFone(rs.getString("Fone"));
                cliente.setEmail(rs.getString("Email"));
        }
            rs.close();
            pstmt.close();
            return cliente;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
tem um exemplo igual a este nos tutorias do site quanto ao Framework eu acho desnecesario ja que não tem conhecimento do basico emtenda o basico Bean et all dai va para o Framework.
T

Acho melhor criar um DAO(Interface) e um DAOImpl(implementação do DAO)…

No DAO(Data Access Object) que vai ser a interface, só cria o método…

E no DAOImpl você implementa estes métodos…

Use uma classe Cliente para chamar estes métodos e fazer as validações do formulario…

E primeiro de tudo, escolha um framework e um servidor de aplicação, depois disto vai pensando como que você vai ir fazendo isso…

abs

P

Vocês são demais. Muuuuuuuuuuuuuuiiiiiito obrigado mesmo, pela ajuda com o código. Estava um pouco(bem) perdido. Então, todos falam de escolher Framework, Servidor de aplicação e etc… Eu estou começando. Gostaria de Usar Hibernate(JPA) e EJB. Acham que é demais? Ou o que vocês me dizem ou segerem. Na informática não tem aquilo de aprender um mais “fácil” e depois passar pra outro. Já se deve escolher o que realmente vai te acompanhar, a menos que se tenha uma visão errada das coisa. Pra mim seria assim:

Hibernate(JPA)
Struts
EJB
Oracle(Já conheço bem)
Eclipse
JSF

Esses são alguns dos caras que eu quero conhecer e conhecer bem. Estou certo ou não?

Criado 4 de março de 2010
Ultima resposta 4 de mar. de 2010
Respostas 6
Participantes 4