您的位置:首页 > 编程语言 > Java开发

【JAVA】JDBC连接数据库

2018-01-17 11:29 429 查看
导入jdbc驱动:

1.java项目:

右键项目->Build Path->Configure Build Path...->Libraries->Modulepath->Add External JARs...

选择jdbc驱动即可。

2.java web项目

复制jdbc驱动,粘贴到项目的WebContent->WEB-INIF->lib下,即可。

(java web项目如果按照1中的方法导入驱动,会出现null pointer错误)

-------------------------------------------------------------------------------

demo:

public class JDBCdemo {
private static final String DBDRIVER = "com.mysql.jdbc.Driver";
private static final String DBURL = "jdbc:mysql://localhost:3306/example";
private static final String DBUSER = "root";
private static final String DBPASS = "xxxx";
private Connection connection = null;

public static void main(String[] args) {
JDBCdemo dbc = new JDBCdemo();
dbc.getConnection();
}

public JDBCdemo() {
try {
System.out.println("connection begin");
Class.forName(DBDRIVER);
connection = DriverManager.getConnection(DBURL, DBUSER, DBPASS);
System.out.println("connection successful!");
connection.close();
} catch (Exception e) {
e.printStackTrace();;
} finally {
}
}

public Connection getConnection() {
return connection;
}

public void close() throws Exception {
if (connection != null) {
try {
connection.close();
} catch (Exception e) {
throw e;
}
}
}
}

加载数据库驱动时使用Class.forName(DBDVIVER)的原因:

Class.forName("");的作用是要求JVM查找并加载指定的类,如果在类中有静态初始化器的话,JVM必然会执行该类的静态代码 段。

而在JDBC规范中明确要求这个Driver类必须向DriverManager注册自己,即任何一个JDBC 

Driver的 Driver类的代码都必须类似如下:
  public class MyJDBCDriver implements Driver {
   static {
     DriverManager.registerDriver(new MyJDBCDriver());
  }
  }
既然在静态初始化器的中已经进行了注册,所以我们在使用JDBC时只需要Class.forName(XXX.XXX);就可以了。
https://www.cnblogs.com/shosky/archive/2011/07/22/2114290.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: