package com.heima.tes1;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCTest_versions2 {
public static void main(String[] args) {
Connection connection = null;
Statement smt = null;
ResultSet resultset = null;
try {
/**
* 1.注册驱动. 理解:注册驱动,这里使用反射去加载mysql中的Driver这个类,加载的时候就会去注册驱动,
* 因为下面这段mysql下的Driver类的代码中存在new Driver();
*
* static {
try {
java.sql.DriverManager.registerDriver(new Driver());
} catch (SQLException E) {
throw new RuntimeException("Can't register driver!");
}
}
*/
Class.forName("com.mysql.jdbc.Driver");
/**
* 2.获得连接 url:"jdbc:mysql://localhost:3306/你的数据库名称"
*/
String url = "jdbc:mysql://localhost:3306/java";
String user = "root";
String password = "root";
connection = DriverManager.getConnection(url, user, password);
/**
* 3.执行sql语句 步骤:基于连接创建一个 Statement声明对象调用executeQuery()执行 SQL
* 语句发送到数据库。 理解:java语言中万物皆对象,根据连接对象获取 一个声明对象(我要干什么,这种想法也是一个对象),
* 通过这个对象去调用执行方法,执行相应语句
*/
smt = connection.createStatement();
String sql = "select * from student";
resultset = smt.executeQuery(sql);
/**
* 4.处理结果集
*/
while (resultset.next()) {
System.out.println(resultset.getString("sname"));
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
/**
* 5.关闭资源
*/
try {
if (connection != null) {
connection.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
connection = null;
}
try {
if (smt != null) {
smt.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
smt = null;
}
try {
if (resultset != null) {
resultset.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
resultset = null;
}
}
}
}
Java程序与mysql的交互
最新推荐文章于 2022-11-03 10:46:56 发布