Java使用JDBC连接数据库

前言

所有支持JDBC访问数据库的操作方式都是一样的。

1
2
3
4
5
6
Connection con = DriverManager.getConnection(jdbcUrl, username, password);
st = con.createStatement();
st.setFetchSize(3);


ResultSet rs = st.executeQuery(sql);

区别在于以下几点

  • Jar引用不同
  • 加载驱动不同
  • jdbcUrl不同

Mysql

Jar

1
2
3
4
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>

驱动加载

1
Class.forName("com.mysql.cj.jdbc.Driver");

jdbcUrl

1
jdbc:mysql://192.168.7.10:3306/zzcg?useCursorFetch=true

SqlServer

Jar

1
2
3
4
5
6
7
8
<!--连接SQL Server-->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/libs/sqljdbc4-4.0.jar</systemPath>
</dependency>

驱动加载

1
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

jdbcUrl

1
jdbc:sqlserver://192.168.7.101:1433;DatabaseName=zdb;

Oracle

Jar

1
2
3
4
5
6
7
8
<!--连接Oracle-->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/libs/ojdbc6.jar</systemPath>
</dependency>

驱动加载

1
Class.forName("oracle.jdbc.driver.OracleDriver");

jdbcUrl

1
jdbc:oracle:thin:@192.168.7.101:1521:orcl

Hive

Jar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!--Hive JDBC-->
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>2.1.0</version>
<exclusions>
<exclusion>
<artifactId>protobuf-java</artifactId>
<groupId>com.google.protobuf</groupId>
</exclusion>
<exclusion>
<artifactId>slf4j-api</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>

驱动加载

1
Class.forName("org.apache.hive.jdbc.HiveDriver");

jdbcUrl

1
jdbc:hive2://192.168.7.101:10000/default

PostgreSQL

Jar

1
2
3
4
5
6
<!--连接PostgreSQL-->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.2</version>
</dependency>

驱动加载

1
Class.forName("org.postgresql.Driver");

jdbcUrl

1
jdbc:postgresql://localhost:5432/db_person