/*
* 这部分代码是测试连通数据库的
* 我在数据库中建立了一个student的数据库 并且赋予了一个全部权限的test用户,test用户的密码也是test
* 在做好上面的工作的基础上再去进行下面代码的运行测试
*/
package link_test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Connect {
public static Connection getConnection(String driverClassName,
String dbURL, String userName, String password)
throws ClassNotFoundException,SQLException {
Connection con=null;
//加载连接数据库的驱动类
Class.forName(driverClassName);
//使用用户名 密码连接数据库
con = DriverManager.getConnection(dbURL, userName, password);
return con;//返回Connection类型的con
}
public static Connection getMysqlConnection(String dricerClassName,
String serverHost, String serverPort, String dbName, String
userName, String password ) throws ClassNotFoundException,
SQLException{
//如果没有提供这些链接参数 则使用默认值
if(dricerClassName == null){
dricerClassName = "com.mysql.jdbc.Driver";
}
if(serverHost == null){
serverHost = "127.0.0.1";
}
if(serverPort == null){
serverPort = "3306";
}
//构建访问MySQL数据库的URL
String dbURL = "jdbc:mysql://"+serverHost+":"+serverPort+"/"
+dbName;
return getConnection(dricerClassName, dbURL, userName, password);
}
public static void main(String[] args) throws ClassNotFoundException,
SQLException {
// TODO 自动生成的方法存根
String mySQLDriver = "com.mysql.jdbc.Driver";//这一行有个地方写错了 导致了异常
String dbName="student";//数据库的名字叫student
String userName="test";//用户名
String password="test";//对应用户名的密码
Connection con=Connect.getMysqlConnection(
mySQLDriver, null, null, dbName, userName, password);
//获取连接
System.out.println("连接MySQL数据库成功!");
con.close();//连接关闭
System.out.println("成功关闭与数据库的连接");
/*
* 演示第二种连接方式
*/
String url="jdbc:mysql://127.0.0.1:3306/"+dbName;
con = Connect.getConnection(mySQLDriver, url, userName, password);
System.out.println("数据库连接成功");
con.close();
System.out.println("数据库已经断开连接");
}
}
2.获取 数据库和表的元数据
package getData;
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import com.mysql.jdbc.Connection;
public class getData {