Desse modo, inseri o código que pediu, mas ele retorna semente o hash do objeto.
package br.com.alura.jdbc;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class TestaInsercao {
public static void main(String[] args) throws SQLException {
String nome, descricao,sql;
nome = "notebook";
descricao= "note' i5";
Connection con = Database.getConnection();
sql = "insert into produtos (nome, descricao) value (?,?)";
PreparedStatement statement = con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
statement.setString(1, nome);
statement.setString(2, descricao);
boolean resultado = statement.execute();
System.out.println("é select " + resultado);
Integer id;
ResultSet resultset = statement.getGeneratedKeys();
System.out.println(resultset);
while(resultset.next()) {
id = resultset.getInt("id");
System.out.println("O id gerado foi " + id);
}
resultset.close();
statement.close();
con.close();
}
}
Console resultado:
Connection On
é select false
com.mysql.jdbc.JDBC4ResultSet@6576fe71
Exception in thread "main" java.sql.SQLException: Column 'id' not found.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1144)
at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2813)
at br.com.alura.jdbc.TestaInsercao.main(TestaInsercao.java:31)