Importe o pacote de driver e carregue a classe de driver específica
Pacote guia:
- Crie um novo arquivo de projeto Java e crie um novo arquivo de pasta chamado lib nesta pasta (alguns pacotes importados são colocados nesta pasta)
- Arraste mysql-connector-java-xxxx.jar para dentro, clique com o botão direito do mouse em Build Path → Adicionar ao Build Path; (aqui eu uso mysql-connector-java-8.0.20.jar)
Carregue uma classe de driver específica:
Class.forName("com.mysql.cj.jdbc.Driver");
Estabeleça uma conexão com a conexão de banco de dados
String url = "jdbc:mysql://localhost:3306/****?serverTimezone=UTC";
//****是你要访问的数据库是哪个,mysql版本5.0以上需要在后面加上serverTimezone=UTC
//String url = "jdbc:mysql://localhost:3306/****?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC";
String username = "****"; //数据库的用户名
String password = "****";//数据库的密码
Connection con = DriverManager.getConnection(url, username, password);
Enviar instrução sql, executar instrução sql (instrução)
Adicionar, excluir e modificar operações:
Statement statement = connection.createStatement();
String sql = "insert into user values(1,'Jackage','857857')";//插入一条数据
int executeUpdate = statement.executeUpdate(sql);//返回值表示改动了几条数据
Operação de consulta:
String sql = "select name,password from user";<em>//查询数据</em>
ResultSet rs = statement.executeQuery(sql);
Processando conjunto de resultados (consulta)
Processando os resultados de adições, exclusões e modificações:
if (executeUpdate > 0) {
System.out.println("操作成功!!!");
} else {
System.out.println("未发生改动!!!!");
}
Processando os resultados da consulta:
while (rs.next()) {
String uname = rs.getString("name");
String upwd = rs.getString("password");
System.out.println(uname+ " " + upwd);
}
Acima são as etapas simples para o JDBC acessar o banco de dados, também precisamos lançar uma exceção no meio
Exceto Class.forName () lança ClassNotFoundException, todos os outros métodos lançam SQLException
Finalmente, você precisa fechar conexão, declaração, rs
A ordem de fechamento é oposta à ordem de abertura, e uma exceção deve ser lançada ao mesmo tempo
try {
if(rs!=null)rs.close()
if(stmt!=null) stmt.close();
if(connection!=null)connection.close();
} catch (SQLException e) {
e.printStackTrace();
}