### Java 连接 MySQL、SQL Server、Access 和 Oracle 数据库实例详解 在现代软件开发过程中,数据库连接是一项基本且重要的任务。本文将详细介绍如何使用 Java 语言连接四种常见类型的数据库:MySQL、SQL Server、Access 和 Oracle,并提供具体的代码示例。 #### 1. Java 连接 MySQL 数据库 为了实现 Java 应用程序与 MySQL 数据库之间的通信,我们需要使用 JDBC(Java Database Connectivity)驱动。对于 MySQL 数据库,最常用的驱动是 `mysql-connector-java`。 **步骤一:添加 MySQL 驱动** 下载 MySQL 的 JDBC 驱动 `mysql-connector-java-3.1.12-bin.jar` 并将其放置到 JDK 的扩展目录下,例如 `JDK\jre\lib\ext` 目录。 **步骤二:编写连接代码** ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectMySQL { public static Connection connect() { try { // 数据库 URL 地址 String connName = "jdbc:mysql://localhost:3306/mysqldb?useUnicode=true&characterEncoding=gb2312"; // 用户名 String dbUser = "root"; // 密码 String dbPwd = "zhihua1124"; Class.forName("com.mysql.jdbc.Driver"); // 建立连接 Connection con = DriverManager.getConnection(connName, dbUser, dbPwd); return con; } catch (Exception e) { System.err.println("连接数据库失败!"); return null; } } } ``` #### 2. Java 连接 SQL Server 数据库 对于 SQL Server 数据库,我们可以使用 Microsoft 提供的 JDBC 驱动 `sqljdbc.jar`。 **步骤一:添加 SQL Server 驱动** 将 `sqljdbc.jar` 放置到 `JDK\jre\lib\ext` 目录下。 **步骤二:编写连接代码** ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectSQLServer { public static Connection connect() { try { // 数据库 URL 地址 String connName = "jdbc:sqlserver://localhost:1433;integratedSecurity=true;databaseName=sqlserverdb"; // 加载驱动 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 对于 SQL Server 2005 // Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); // 对于 SQL Server 2000 // 建立连接 Connection con = DriverManager.getConnection(connName); return con; } catch (Exception e) { e.printStackTrace(); return null; } } } ``` #### 3. Java 连接 Access 数据库 连接 Access 数据库时,我们通常会通过 ODBC 来建立连接。 **步骤一:设置 ODBC 数据源** 创建一个名为 `accessdb` 的 ODBC 数据源。 **步骤二:编写连接代码** ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class ConnectAccess { public static void main(String[] args) { try { // 加载驱动 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 建立连接 Connection con = DriverManager.getConnection("jdbc:odbc:accessdb"); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM Students"); while (rs.next()) { int id = Integer.parseInt(rs.getString("id")); String name = rs.getString("name"); String address = rs.getString("address"); String phone = rs.getString("phone"); String email = rs.getString("email"); StudentInfo stu = new StudentInfo(id, name, address, phone, email); // 假设 allStudent 是 List<StudentInfo> 类型 // allStudent.add(stu); } rs.close(); stmt.close(); // 返回所有学生信息 // return allStudent; } catch (Exception e) { e.printStackTrace(); // return null; } } } ``` #### 4. Java 连接 Oracle 数据库 对于 Oracle 数据库,我们可以使用 Oracle 提供的 JDBC 驱动。 **步骤一:添加 Oracle 驱动** 将 Oracle 的 JDBC 驱动 `classes12.jar` 放置到 `JDK\jre\lib\ext` 目录下,并确保 `classes12.zip` 文件存在于指定路径下。 **步骤二:编写连接代码** ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectOracle { public static Connection connect() { try { // 加载驱动 String name = "oracle.jdbc.driver.OracleDriver"; String url = "jdbc:oracle:thin:@localhost:1521:oracledb"; Class.forName(name).newInstance(); // 建立连接 Connection con = DriverManager.getConnection(url, "ddbi", "ddbi"); return con; } catch (Exception e) { e.printStackTrace(); return null; } } } ``` ### 总结 以上是使用 Java 连接 MySQL、SQL Server、Access 和 Oracle 数据库的基本方法。需要注意的是,在实际项目中,建议使用更高级的框架或工具来管理数据库连接,如 Spring Data JPA 或 Hibernate,这些框架提供了更丰富的功能和更好的性能优化。同时,考虑到安全性问题,应当避免在代码中直接写入数据库用户名和密码,而是通过配置文件或其他安全的方式进行管理。
- 粉丝: 12
- 资源: 25
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于ESP8266和Arduino的HomeMatic水表读数系统.zip
- (源码)基于Django和OpenCV的智能车视频处理系统.zip
- (源码)基于ESP8266的WebDAV服务器与3D打印机管理系统.zip
- (源码)基于Nio实现的Mycat 2.0数据库代理系统.zip
- (源码)基于Java的高校学生就业管理系统.zip
- (源码)基于Spring Boot框架的博客系统.zip
- (源码)基于Spring Boot框架的博客管理系统.zip
- (源码)基于ESP8266和Blynk的IR设备控制系统.zip
- (源码)基于Java和JSP的校园论坛系统.zip
- (源码)基于ROS Kinetic框架的AGV激光雷达导航与SLAM系统.zip