1.加载驱动
在连接数据库之前,首先要加载想要的链接的数据库的驱动到JVM。这个通过java.lang.class类的静态方法forname(String ClassName)实现的。
statement = connection.prepareStatement(sql);
Class.forName("com.mysql.jdbc.Driver");
2.创建连接
连接URL定义了连接数据库时的协议,子协议,数据源。
connection= DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306
/jdbc?useSSL=true&"+"characterEncoding=utf-8&user=root&password=123");
其中jdbc为数据库名
3.写sql
要想链接数据库,需要向java.sql.DriverManager请求并获取Connection对象,获取的对象就代表着一个数据库的链接。数据库连接时使用的是DriverManager的getConnection(String url,String username,String password)方法传入指定的欲连接的数据库的路径,数据库的用户名和密码来获得。
String sql="select * from tuser";
可以把select改为其他的数据库操作语言
4.得到statement对象
创建一个statement要执行sql语句必须获得ststement实例,statement实例分为以下三种类型:执行静态sql语句时,通常通过Statement实例实现。执行动态sql语句时,通常通过PerparedStatement实例化实现。执行数据库存储过程,通常通过Callable Statement实例实现
statement = connection.prepareStatement(sql);
5.执行sql,得到结果集
Statement接口提供了三种执行sql语句的方法:executeQuery,executeUpdate和excute(用于执行多个结果集,多个更新计数或二者结合语句。
resultSet=statement.executeQuery();
statement = connection.prepareStatement(sql);
6.处理结果集
两种情况:1.执行更新返回的是本次操作影响的记录数。2.执行查询返回的结果是一个ResultSet对象。ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了这些行中数据的访问。
while(resultSet.next()){
System.out.println((resultSet.getInt(1)));
System.out.println((resultSet.getString(2)));
System.out.println((resultSet.getString(3)));
}
7.关闭资源
操作完成,关闭所有JDBC对象,已释放JDBC资源,关闭顺序,和声明顺序相反
if(statement!=null) {
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(connection!=null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
本次代码运行结果