Pesquisei e não encontrei solução, se puderem me ajudar…O código é esse:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.rowset.JdbcRowSet;
import javax.sql.rowset.RowSetProvider;
public class ConexaoFactory {
public static JdbcRowSet getRowSetConnection() {
String url = "jdbc:mysql://localhost:3306/agencia?useTimezone=true&serverTimezone=UTC";
String user = "root";
String password = "root";
try {
JdbcRowSet jdbcRowSet = RowSetProvider.newFactory().createJdbcRowSet();
jdbcRowSet.setUrl(url);
jdbcRowSet.setUsername(user);
jdbcRowSet.setPassword(password);
return jdbcRowSet;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
public static void close(JdbcRowSet jrs) {
try {
if (jrs != null)
jrs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
==========================================================================
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.sql.rowset.JdbcRowSet;
public class CompradorDB {
public static List<Comprador> searchByNameRowSet(String nome) {
String sql = "SELECT id, nome, cpf FROM agencia.comprador where nome like ?";
JdbcRowSet jrs = ConexaoFactory.getRowSetConnection();
List<Comprador> compradorList = new ArrayList<>();
try {
jrs.setCommand(sql);
jrs.setString(1, "%" + nome + "%");
jrs.execute();
while (jrs.next()) {
compradorList.add(new Comprador(jrs.getInt("id"), jrs.getString("cpf"), jrs.getString("nome")));
}
ConexaoFactory.close(jrs);
return compradorList;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
}
===========================================================================
O erro apresentado no console é esse:
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/agencia?useTimezone=true&serverTimezone=UTC
at java.sql/java.sql.DriverManager.getConnection(Unknown Source)
at java.sql/java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.rowset/com.sun.rowset.JdbcRowSetImpl.connect(Unknown Source)
at java.sql.rowset/com.sun.rowset.JdbcRowSetImpl.prepare(Unknown Source)
at java.sql.rowset/com.sun.rowset.JdbcRowSetImpl.execute(Unknown Source)
at br.com.abc.javacoree.ZZCjdbc.db.CompradorDB.searchByNameRowSet(CompradorDB.java:149)
at br.com.abc.javacoree.ZZCjdbc.test.TesteConexao.main(TesteConexao.java:26)
null
Obs:.
1 Estou usando o JDK 10
2 Engraçado que outros métodos que também usam o Driver como o searchByNameCallableStatement() por exemplo, funciona (Só retirei do tópico para não ficar comprido)

