[RESOLVIDO]Exercicio 2.11 apostila Caelum

1 resposta
Jeferson_Carlos

Estou realizando o exercicio Java Web da apostila da Caelum. Porém, ao realizar a execução, o mesmo esta apresentando o seguinte erro:

Mon Oct 24 18:13:48 BRST 2016 WARN: Establishing SSL connection without servers identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isnt set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to false’. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

Exception in thread main java.lang.RuntimeException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table fj21.contatos doesnt exist

at br.com.caelum.jdbc.dao.ContatoDao.adiciona(ContatoDao.java:39)

at br.com.caelum.jdbc.teste.TesteInsere.main(TesteInsere.java:24)

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table fj21.contatos doesnt exist

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

Poderiam me ajudar por favor?

Segue Classes criadas:

Classe Contato:

package br.com.caelum.jdbc.modelo;

import java.util.Calendar;

public class Contato {

	private int id;
	private String nome;
	private String email;
	private String endereco;
	private Calendar dataNascimento;
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getEndereco() {
		return endereco;
	}
	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}
	public Calendar getDataNascimento() {
		return dataNascimento;
	}
	public void setDataNascimento(Calendar dataNascimento) {
		this.dataNascimento = dataNascimento;
	}
	
}

Classe ContatoDao

package br.com.caelum.jdbc.dao;

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

import br.com.caelum.jdbc.ConnectionFactory;
import br.com.caelum.jdbc.modelo.Contato;

public class ContatoDao {
	
	private Connection connection;
	
	public ContatoDao(){
		this.connection = new ConnectionFactory().getConnection();
	}

	
	public void adiciona(Contato contato){
		String sql = "insert into contatos " + "(nome,email,endereco,dataNascimento)" +
				"values (?,?,?,?)";
		
		
		try{
			//preparedStatement pra insersao
			PreparedStatement stmt = connection.prepareStatement(sql);
			
			//seta os valores
			stmt.setString(1,contato.getNome());
			stmt.setString(2, contato.getEmail());
			stmt.setString(3, contato.getEndereco());
			stmt.setDate(4, new Date(contato.getDataNascimento().getTimeInMillis()));
			
			//executa
			stmt.execute();
			stmt.close();
		}catch(SQLException e){
			throw new RuntimeException(e);
		}
		
	}
	
}

Classe TesteInsere

package br.com.caelum.jdbc.teste;

import java.util.Calendar;

import br.com.caelum.jdbc.dao.ContatoDao;
import br.com.caelum.jdbc.modelo.Contato;

public class TesteInsere {

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

		
		//chamando um contato e gravando seus dados
		Contato contato = new Contato();
		contato.setNome("Caelum");
		contato.setEmail("[email removido]");
		contato.setEndereco("Rua Vergueiro 3185 , Paraiso");
		contato.setDataNascimento(Calendar.getInstance());
		
		//chamando e gravando na conexao ContatoDao
		ContatoDao dao = new ContatoDao();
		//metodo de adicionar os contatos 
		dao.adiciona(contato);
		
		System.out.println("Contato Gravado!");
		
		
	}

}

1 Resposta

JulioCesarSF

Tabela não existe?

Criado 24 de outubro de 2016
Ultima resposta 24 de out. de 2016
Respostas 1
Participantes 2