Persistencia no banco com date

7 respostas
E

tenho grande eu quero fazer uma inserção no banco atraves da aplicação eu criei da seguinte forma

primeiro eu criei o bean

package forsig.sistema.dallas.bean;

import java.sql.Date;







public class Paises  implements java.io.Serializable {

        
     private int psId;
     private Date lastDtMotvo;
     private Integer lastIdUser;
     private String psNome;
     private String psSigla;
     private Integer psBacem;
   

    public Paises() {
    }

	
    public Paises(int psId) {
        this.psId = psId;
    }
    public Paises(int psId, Date lastDtMotvo, Integer lastIdUser, String psNome, String psSigla, Integer psBacem) {
       this.psId = psId;
       this.lastDtMotvo = lastDtMotvo;
       this.lastIdUser = lastIdUser;
       this.psNome = psNome;
       this.psSigla = psSigla;
       this.psBacem = psBacem;
     
    }
   
    public int getPsId() {
        return this.psId;
    }
    
    public void setPsId(int psId) {
        this.psId = psId;
    }
    public Date getLastDtMotvo() {
        return  lastDtMotvo;
    }
    
    public void setLastDtMotvo(Date lastDtMotvo) {
        this.lastDtMotvo = lastDtMotvo;
    }
    public Integer getLastIdUser() {
        return this.lastIdUser;
    }
    
    public void setLastIdUser(Integer lastIdUser) {
        this.lastIdUser = lastIdUser;
    }
    public String getPsNome() {
        return this.psNome;
    }
    
    public void setPsNome(String psNome) {
        this.psNome = psNome;
    }
    public String getPsSigla() {
        return this.psSigla;
    }
    
    public void setPsSigla(String psSigla) {
        this.psSigla = psSigla;
    }
    public Integer getPsBacem() {
        return this.psBacem;
    }
    
    public void setPsBacem(Integer psBacem) {
        this.psBacem = psBacem;
    }

   


}

e depois eu criei o controller a onde é feito a inserção no banco

package forsig.sistema.dallas.controller;

import forsig.Conexao;
import forsig.sistema.dallas.bean.Paises;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;


public class PaisesController {

    private PreparedStatement pstm = null;
    private ResultSet rst = null;
    
    
 
 private String inserirProduto = "INSERT INTO paises("
            + "   last_dt_motvo                                               "
            + " , last_id_user                                              "
            + " , ps_id                                                     "
            + " , ps_nome                                                   "
            + " , ps_sigla                                                  "
            + " , ps_bacem )                                                "
            + "  VALUES ( ?, ?, ?, ?, ?, ?)";
  
 
 private String consultaProduto = "SELECT"
            + "  last_movto                                                 "
            + " , last_coduser                                              "
            + " , ps_id                                                     "
            + " , ps_nome                                                   "
            + " , ps_sigla                                                  "
            + " , ps_bacem                                                  "
            + "   FROM paises                                               "
            + "    WHERE ps_id = ?";
   
 private String atualizaProduto = "UPDATE paises SET"
            + "  last_movto                                                   "
            + " , last_coduser                                              "
            + " , ps_id                                                     "
            + " , ps_nome                                                   "
            + " , ps_sigla                                                  "
            + " , ps_bacem                                                  "
            + "   FROM paises                                               "
            + "  WHERE ps_id = ? ";

    private String deletarProduto = "DELETE FROM paises WHERE ps_id=?";

   public void inserir(Paises produto) {
        Conexao conn = new Conexao();
        try{
            pstm = conn.conectar().prepareStatement(inserirProduto);
            pstm.setDate(1,produto.getLastDtMotvo());
            pstm.setInt(2, produto.getLastIdUser());
            pstm.setInt(3, produto.getPsId());
            pstm.setString(4, produto.getPsNome());
            pstm.setString(5, produto.getPsSigla());
            pstm.setInt(6, produto.getPsBacem());
            pstm.executeUpdate();
        }catch(SQLException e ){
            e.printStackTrace();
           conn.Fechar();
        }
    }
   
      public void atualizar(Paises produto) {
        Conexao conecta = new Conexao();
        
        try{
            pstm = conecta.conectar().prepareStatement(atualizaProduto);
            pstm.setDate(1,produto.getLastDtMotvo());
            pstm.setInt(2, produto.getLastIdUser());
            pstm.setInt(3, produto.getPsId());
            pstm.setString(4, produto.getPsNome());
            pstm.setString(5, produto.getPsSigla());
            pstm.setInt(6, produto.getPsBacem());
            pstm.executeUpdate();
            
        }catch(SQLException ex){
            ex.printStackTrace();

        }finally{
            conecta.Fechar();
        }
    }


}

e dai eu crie a tela o grafico no netbeans e é aqui que esta o erro que eu crie uma textField que contem

private void btIncluirActionPerformed(java.awt.event.ActionEvent evt) {                                          
 Paises p = new Paises();
 PaisesController pc = new PaisesController();
  p.setLastDtMotvo(txtLastDTUser.getFormatter());// O ERRO ESTA AQUI NESTA LINHA É SO ESSE ERRO 
  p.setLastIdUser(txtLastIDUser.getSelectionEnd());
  p.setPsNome(txtNome.getText());
  p.setPsSigla(txtSigla.getText());
  p.setPsBacem(txtCodIbge.getSelectionEnd());
  pc.inserir(p);
  txtLastDTUser.setText("");
  txtCodigo.setText("");
  txtCodIbge.setText("");
  txtLastIDUser.setText("");
  txtNome.setText("");
  txtSigla.setText("");
}

alguem pode me ajuda

7 Respostas

M

banco de dados é mysql?

converte sua data primeiro e manda salvar como se fosse string no banco de dados

public class ConverterData {

	public String converter(Date data){
		DateFormat dtOutput = new SimpleDateFormat("yyyy-MM-dd");		
		String dataCovertida = dtOutput.format(data);;
		return dataCovertida;
	}
}
anderson.bonavides

Cola o erro aqui para vermos, agora o tipo o qual você está passando deve ser diferente do tipo esperado.

M

se n’ao der certo posta o erro pra gente da uma olhada

Marlon_Meneses

faça assim

E

eu tentei os exemplos que me falaram não deu certo

porque so se pode recuperar texto de TextField

mais converter essa String recuperada do TextField e Converter Em tipo data

sendo que nehuma das classes tem um metodo para converter uma String

E

eliasForsig:
eu tentei os exemplos que me falaram não deu certo

porque so se pode recuperar texto de TextField

mais converter essa String recuperada do TextField e Converter Em tipo data

sendo que nehuma das classes tem um metodo para converter uma String

LPJava

eliasForsig:
eu tentei os exemplos que me falaram não deu certo

porque so se pode recuperar texto de TextField

mais converter essa String recuperada do TextField e Converter Em tipo data

sendo que nehuma das classes tem um metodo para converter uma String

eu n entendi direito o que vc quis dizer, mas se vc usar a SimpleDateFormat vc vai converter de Date para String, é esperado que não tenha problema nesse ponto.
Põe a msg de erro ai pra gente ver.

abraco,

Criado 11 de janeiro de 2012
Ultima resposta 14 de jan. de 2012
Respostas 7
Participantes 5