现在我有一些问题需要理解我的实现

我的Servlet

package br.com.cad.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import br.com.cad.dao.Cadastro;
import br.com.cad.basica.Contato;

public class AddDados extends HttpServlet{

    protected void service(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {


 PrintWriter out = response.getWriter();

 ...

    StringBuilder finalDate = new StringBuilder("DataNascimento1")
.append("/"+request.getParameter("DataNascimento‌​2"))
.append("/"+request.getParameter("DataNascimento3"));

 try {
     Date date = new SimpleDateFormat("dd/MM/yyyy"); //here there are error
     finalDate.toString();

 } catch(ParseException e) {
     out.println("Erro de conversão da data");
     return;
 }
 Contato contato = new Contato();
     ??????????


我的目标道

    package br.com.cad.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Date;

import br.com.cad.dao.ConnectDb;
import br.com.cad.basica.Contato;
public class Cadastro {

    private Connection connection;


    public Cadastro() {
        this.connection = new ConnectDb().getConnection();
    }

    public void adiciona(Contato contato) {
        String sql = "INSERT INTO dados_cadastro(pf_nome, pf_ultimonome, pf_rg, pf_cpf, pf_sexo,pf_dt_nasc) VALUES(?,?,?,?,?,?,?,?)";
        try {

            PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setDate(6, new Date( contato.getDataNascimento1().getTimeInMillis()) );
stmt.execute();
            stmt.close();
            System.out.println("Cadastro realizado com sucesso!.");
        } catch(SQLException sqlException) {
            throw new RuntimeException(sqlException);
        }
    }


我的班级接触

package br.com.cad.basica;


导入java.util.Calendar;

公共类Contato {

    private Long id;
    private String nome;
    private String sobrenome;
    private String email;
    private String endereco;
    private Calendar dataNascimento1;
    private Calendar dataNascimento2;
    private Calendar dataNascimento3;
    private String rg;
    private String cpf;
    private String sexo;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getNome() {
        return nome;
    }
    public void setNome(String nome) {
        this.nome = nome;
    }
    public String getSobrenome() {
        return sobrenome;
    }


... getters and setters...


请帮助我确定代码中的一些错误,并将其实现以将数据保存到数据库中。

最佳答案

您应将值传递为01、02、03,但不能传递1、2、3(按天和月计)。检查您的Web表单和日期选择值。

08-18 06:28
查看更多