1、mysql官网下载 mysql-connector-java-5.1.38jar包.
2、项目引入jar包.
出现 :java.lang.ClassNotFoundException:com.mysql.jdbc.Driver
解决办法:
jar包 放在webapps/xxx/WEB-INF/lib 中!
3、加载头文件 import java.sql.*;
4、定义驱动名 定义URL 用户名 密码...
String driver = "com.mysql.jdbc.Driver";
// URL指向要访问的数据库
String url = "jdbc:mysql://127.0.0.1:3306/bbs";
// MySQL配置时的用户名密码
String user = "root";
String password = "123";
5、连接测试
try {
// 加载驱动程序
Class.forName(driver);
// 连接数据路
Connection conn = DriverManager.getConnection(url, user, password);
if (!conn.isClosed()) {
System.out.println("成功连接数据库!");
}
// 创建一个Statement对象
Statement stmt = conn.createStatement(); // 创建Statement对象
System.out.print("成功连接到数据库!");
String sql = "select * from student"; // 要执行的SQL
ResultSet rs = stmt.executeQuery(sql);// 创建数据对象
while (rs.next()) {
// System.out.print(rs.getMetaData());
System.out.print(rs.getInt(1) + "\t");
System.out.print(rs.getString(2) + "\t");
System.out.println();
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
下面开始解释上面代码的意思:
Class.forName(xxx.xx.xx)的作用是要求JVM查找并加载指定的类,
也就是说JVM会执行该类的静态代码段
这里有一个很详细的解释:http://blog.csdn.net/kaiwii/article/details/7405761
DriverManager管理一组 JDBC 驱动程序的基本服务
getConnection 方法 尝试与此 SQLServerDataSource 对象表示的数据源建立连接。
返回SQLServerConnection 对象。
createStatement 由当前数据库连接生成一个数据操作对象。然后这个对象可以执行sql语句。
executeQuery()执行给定的 SQL 语句,该语句返回单个 ResultSet 对象。
返回 包含给定查询所生成数据的 ResultSet 对象;永远不能为 null
next 将光标从当前位置向前移一行。
最后一定要关闭数据库连接。先创建后关闭,后创建先关闭原则。