????????在开发项目时,我们经常涉及到使用JDBC进行数据库访问,但多数初学者在实际数据库连接过程中总会遇到各种各样的问题,以下以我亲身经历帮各位小伙伴们避坑。由于在个人做的项目里始终无法与数据库连接,故单独做了一个测试项目用于测试数据库是否连接成功,项目文件结构如图1所示。
? ? ? ? ?图1? ?项目文件结构
????????首先是Util类,主要用来连接数据库、判断数据库是否连接以及关闭数据库,具体代码如下。
public class Util {
private static Connection conn = null;
private static String URL = "jdbc:mysql://localhost:3306/pro3";
private static String USER = "root";
private static String PASSWORD = "1511";
//静态代码块,使用类装载器加载驱动
/*static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
*/
//加载驱动,并连接数据库
public static Connection getConnection() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(URL, USER, PASSWORD);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
//判断是否连接成功
public static void test() {
if(conn!=null)
{
System.out.println("数据库链接成功");
}
else{
System.out.println("数据库链接失败");
}
}
//关闭连接
public static void closeConnection(Connection conn2) {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
?????????其次是主类,因为我的测试项目仅为了测试数据库是否连接成功,故只需要调用Util类中相关方法即可。
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Util ul=new Util();
ul.getConnection();
ul.test();
}
}
????????以上就是代码部分,需要强调的是Util类中,URL是访问数据库的URL路径,以MySQL数据库为例,URL字符串格式为"jdbc:mysql://ip:port/database",port为端口号,database为数据库名。USER和PASSWORD分别为数据库用户名和密码,这些变量的值会因人而异,各位小白需要自行调整。
? ? ? ? 最后着重强调一下,一定要导入数据库驱动程序jar文件!请注意看图1中的jar包,需要jar包的可以自行去官网下载,需要注意的是,最后放在项目中的文件一定是要以.jar为后缀的文件,不能是.zip为后缀的文件!
参考文献:Java程序设计及应用开发/宋晏,杨国兴主编.——北京:机械工业出版社,2016.8
|