package cn.itcast.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Base {
public static void main(String[] args) throws SQLException {
test();
}
static void test() throws SQLException {
//1.注册驱动
// DriverManager.registerDriver(new com.mysql.jdbc.Driver());
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//2.建立连接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false","root","Qb393302+");
//3.创建语句 Statement是java.sql.Statement中的,在此是用来将SQL语句发送到数据库test中。
Statement st = conn.createStatement();
//4.执行语句 ResultSet用来保存执行sql后的结果
ResultSet rs = st.executeQuery("select * from user");
//5.处理结果 用来遍历当前结果。
while (rs.next()) {
// rs.getObject(1)表示获取的是该user表中从上往下第一个字段id的值,依次类推是name,和age的值.
System.out.println(rs.getObject(1) + "\t" + rs.getObject(2) +
"\t" + rs.getObject(3));
}
//6.释放资源 的顺序是:先开后关.
rs.close(); //释放执行sql后的结果
st.close();//释放sql语句发送数据库的操作
conn.close();//关闭与数据库的连接
}
}
对于注册驱动那块为什么使用class.forName更好呢,请看http://blog.sina.com.cn/s/blog_670c5a4001017e2e.html。谢谢大家